我正在尝试从 netezza 表中删除重复记录。但是很少有列包含空值,因此下面的代码不起作用。
DELETE FROM TABLE_NAME a
WHERE ROW_NUMBER() <> ( SELECT MIN( ROW_NUMBER() )
FROM TABLE_NAME b
WHERE a.COL1 = b.COL1
AND a.COL2 = b.COL2
AND a.COL3 = b.COL3);
Sample Data:-
COL1 COL2 COL3
X NULL Y
A NULL B
X NULL Y
X NULL Y
E VAL F
Expected result:
COL1 COL2 COL3
X NULL Y
A NULL B
E VAL F
注意:COL2 列包含空值。我们在此表中共有 30 列,其中 6 列包含重复记录的空值。
谁能帮我解决这个问题。