isull(table_name)的计数为0,但该表中的许多行都没有值.如何获得正确的计数



我正试图通过跟踪和转换表行中的空单元格来提高数据质量和报告准确性。但是,为了知道有多少表没有值,我使用从TABLE_NAME中选择计数((,其中为Null(column_NAME(*

此查询返回了0计数,这对我来说是个问题。你能给我一个解决这个问题的办法吗?

Null与''的问题??

create table TABLE_NAME(column_name Nullable(String)) Engine=Log;
insert into TABLE_NAME values(''), ('1'), (Null);
SELECT *
FROM TABLE_NAME
┌─column_name─┐
│             │
│ 1           │
│ ᴺᵁᴸᴸ        │
└─────────────┘

SELECT COUNT()
FROM TABLE_NAME
WHERE isNull(column_name)
┌─COUNT()─┐
│       1 │
└─────────┘
SELECT COUNT()
FROM TABLE_NAME
WHERE column_name = ''
┌─COUNT()─┐
│       1 │
└─────────┘
SELECT COUNT()
FROM TABLE_NAME
WHERE coalesce(column_name, '') = ''
┌─COUNT()─┐
│       2 │
└─────────┘

相关内容

最新更新