我想看看我的表中是否存在一列,其中所有行都为null。
SELECT * FROM yourTableName
WHERE yourSpecificColumnName IS NULL
->这只会返回null值,但我不知道整个表中的SpecificColumnName是否完全为null
使用COUNT与HAVING
:
计数
返回指定列的非NULL记录数或记录总数。
SELECT 'Entire_column_is_empty'
FROM yourTable
HAVING COUNT(yourSpecificColumnName) = 0;
或QUALIFY
:
SELECT *
FROM yourTable
QUALIFY COUNT(yourSpecificColumnName) OVER() = 0;
替代方法:
SELECT 'Entire_column_is_empty'
FROM yourTable
HAVING MIN(yourSpecificColumnName) = MAX(yourSpecificColumnName);
您可以使用DISTINCT来获取列的所有唯一值。如果只返回null,则列只包含null。