gpt4 book ai didi

mysql - 如何统计非空字段的数量?

转载 作者:行者123 更新时间:2023-11-29 20:26:57 25 4
gpt4 key购买 nike

我需要获取值不为空的字段的数量。

我的 table

   city      id_no  no1    no2    no3
chn A12 2158
chn A13 8181 8182 8183
chn A14 19138

我需要获取为 no1、...、no3 设置的字段数

我的查询

SELECT 
count(id_no) as total_id,
(count(no1) +
count(no2) +
count(no3)) as c_count
FROM table
WHERE city='chn';

我的输出

  total_id      c_count
3 9

预期:

  total_id      c_count
3 5

我期待的是 5 而不是 9,因为 5 个字段不为空。

最佳答案

或者您可以简单地执行此操作以避免 NULL 或“”数据

SELECT 
count(id_no) as total_id,
(count(CASE WHEN no1 > 0 THEN no1 ELSE NULL END) +
count(CASE WHEN no2 > 0 THEN no2 ELSE NULL END) +
count(CASE WHEN no3 > 0 THEN no3 ELSE NULL END)) as c_count
FROM table
WHERE city='chn';

关于mysql - 如何统计非空字段的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39264435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com