
查询中使用 group by 后添加判断条件
在 mysql 中,使用 group by 子句对数据进行分组时,可以添加判断条件来过滤或聚合特定类别的数据。
问题:
如何统计 mysql 表中 clip_url_hash 列中的三种情况:为 null、为空字符 (“) 和有实际值(长度大于 0)?
解决方案:
使用 case when 表达式来判断每个 clip_url_hash 的情况,并创建一个新列 checks 来存储这些情况。然后使用新的 checks 列对数据进行分组并计算 count。
sql 语句:
select
d.checks, count(d.checks)
from (select (
case clip_url_hash
when '' then '空字符串'
when null then 'null'
else '正常的' end
) as checks from text_meta_ingest) as d
group by d.checks;
登录后复制
结果:
checks | count --------|-------- 空字符串 | 10 NULL | 15 正常的 | 120
登录后复制
以上就是如何统计 MySQL 表中 clip_url_hash 列的空值、空字符串和非空值?的详细内容,更多请关注米云网其它相关文章!
