从表中删除所有NULL值行?

时间:2017-09-22 10:40:50

标签: sql sql-server database

My sql query 工作正常,但我有另一个问题,我的表中的某些行具有NULL值。我想删除所有NULL值行。有什么建议?

3 个答案:

答案 0 :(得分:5)

删除语句应该有效

DELETE FROM your_table 
WHERE your_column IS NULL;

如果是多列NULL检查,我建议使用COALESCE

DELETE FROM your_table 
WHERE COALESCE (your_column1, your_column2, your_column3 ) IS NULL;

答案 1 :(得分:2)

如果要删除所有列值为null的行,请使用以下查询删除:

Location item = connection
  .Table<Location>()
  .AsEnumerable()
  .Where(l => l.Label.Equals(label))
  .FirstOrDefault();

但是如果要删除任何列值为null的行,请使用以下查询删除:

    DELETE FROM your_table 
    where your_column1 IS NULL 
    AND your_column2 IS NULL 
    AND your_column3 IS NUL;

答案 2 :(得分:0)

您可以首先过滤掉不需要,不需要或不使用的列。

SELECT column1, column2, column3
FROM table

然后使用null命令从查询中删除IS NOT NULL值。请记住,null值也可以为零,这取决于表和数据格式的设置方式。在下面的示例中,假设column2是数字格式。

WHERE column1 IS NOT NULL AND column2 > 0 AND column3 IS NOT NULL