在MySQL中测试多列中的NULL

San*_*osh 1 mysql

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

例如:

SELECT * FROM table1 WHERE column1 IS NULL;
Run Code Online (Sandbox Code Playgroud)

上面的查询返回column1没有任何值的行.

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

我想在MYSQL中使用它

new*_*ver 6

SELECT *
FROM table1
WHERE coalesce(column1, column2, column3) IS NULL;
Run Code Online (Sandbox Code Playgroud)

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

UPD

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

SELECT *
FROM table1
WHERE column1 IS NULL or column2 IS NULL;
Run Code Online (Sandbox Code Playgroud)