count为0,但该表中的许多行没有值如何获得正确的计数?

r3i60tvu  于 2021-07-15  发布在  ClickHouse
关注(0)|答案(1)|浏览(354)

我正试图通过跟踪和转换表行中的空单元格来提高数据质量和报告准确性。但是,为了知道有多少表没有值,我使用了select count()from table\u name where isnull(column\u name)*
此查询返回0计数,这对我来说是个问题。你能给我一个解决这个问题的办法吗?

clj7thdc

clj7thdc1#

空与“”问题??

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 │
└─────────┘

相关问题