【发布时间】:2019-08-05 00:05:12
【问题描述】:
我有一张有 34 列的表格。 前 4 列形成主键(因此它们中没有空值),其余 30 列中的数据也为空值。 我希望删除其他 30 列为空的所有行。 一种方法是 -
delete from my_table
where column_30 is null
and columns_29 is null
and column_28 is null
and column_27 is null
...
...
...
有没有什么简单的方法可以在不提及所有 30 个列名的情况下做到这一点?
【问题讨论】:
-
并非如此。大约现在,您应该问自己这张桌子是否设计正确。当您刚刚给我们提供模糊的列名时,当然不可能说,但我怀疑任何具有大量列的表,尤其是当所有非 PK 列都可以为空时。
-
它是一个输入表,是从 csv 文件直接转储的,因此它没有约束和检查
标签: sql sql-server tsql null where-clause