在MySQL中测试多列中的NULL

时间:2011-12-27 12:42:42

标签: mysql

我想从列中值为NULL的表中选择列。

例如:

SELECT * FROM table1 WHERE column1 IS NULL;

上述查询返回column1没有任何值的行。

但我想返回多个列(其中column1,column2,....)

我想在MYSQL中使用它

2 个答案:

答案 0 :(得分:6)

SELECT *
FROM table1
WHERE coalesce(column1, column2, column3) IS NULL;

您必须枚举所有必需的列。 (我应该承认这是一个黑客攻击,不应该在生产代码中使用)

UPD

如果要检查至少一列是否为空,则应使用OR:

SELECT *
FROM table1
WHERE column1 IS NULL or column2 IS NULL;

答案 1 :(得分:4)

没有奇特的方法:你必须测试所有列

SELECT * FROM table1
WHERE
column1 IS NULL AND
column2 IS NULL AND
...
columnn IS NULL;