如何删除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'::float
和 WHERE 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
我正在尝试从 aws redshift(基于 PostgreSQL 8.0.2)中的列中删除 NaN。
我想使用更新语句来执行此操作,例如:
UPDATE table001
SET variable_a = NULL
FROM table001
WHERE variable_a = 'NaN'
但是找不到一种方法来对我需要的行进行子集化。我也尝试过 WHERE variable_a = 'NaN'::float
和 WHERE 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