如何删除aws redshift中的NaN

How to remove NaNs in aws redshift

我正在尝试从 aws redshift(基于 PostgreSQL 8.0.2)中的列中删除 NaN。

我想使用更新语句来执行此操作,例如:

UPDATE table001
SET variable_a = NULL
FROM table001 
WHERE variable_a = 'NaN'

但是找不到一种方法来对我需要的行进行子集化。我也尝试过 WHERE variable_a = 'NaN'::floatWHERE variable_a = FLOAT8 'NaN' 但在所有情况下 where 子句都不会带回任何行

(variable_a 有 data_type float8)

NaN 不等于 RedShift 列中的另一个 NaN(与 PostgreSQL 不同)。

您应该检查其文本表示:

UPDATE  table001
SET     variable_a = NULL
WHERE   variable_a::TEXT = 'nan' -- mind the case