COUNT分组条件去重的sql统计语句示例(mysql)
2023-09-14 08:56:58 时间
常规情况下的sql分组统计为:
select count(1) from 表 where 条件 group by 字段;
但是有时往往需要添加不同的条件已经去重的统计以上语句就不能满足需求。
解决方案为:
1.添加条件的统计方案:
COUNT(CASE WHEN 条件 THEN 1 ELSE NULL END) xxx GROUP BY 分组字段
2.添加条件并去重的统计方案:
COUNT(DISTINCT CASE WHEN 条件 THEN 去重字段 END) xxx GROUP BY 分组字段
综合示例:
SELECT dc.user_sources AS sources, COUNT(CASE WHEN dc.`count_type` IN (1,4) THEN 1 ELSE NULL END) AS djNum1, COUNT(CASE WHEN dc.`count_type` IN (2,5) THEN 1 ELSE NULL END) AS djNum2, COUNT(CASE WHEN dc.`count_type` IN (3,6) THEN 1 ELSE NULL END) AS djNum3, COUNT(DISTINCT CASE WHEN dc.`count_type` IN (1,4) THEN dc.`user_id` END) AS fwNum1, COUNT(DISTINCT CASE WHEN dc.`count_type` IN (2,5) THEN dc.`user_id` END) AS fwNum2, COUNT(DISTINCT CASE WHEN dc.`count_type` IN (3,6) THEN dc.`user_id` END) AS fwNum3, COUNT(DISTINCT CASE WHEN dc.`count_type` IN (2,5) THEN dc.`user_id` END) AS fwNumc4, COUNT(DISTINCT CASE WHEN dc.`count_type` IN (3,6) THEN dc.`user_id` END) AS fwNumc5 FROM `credit_dc_project_count` dc WHERE 1=1 AND dc.user_sources IN('wodong' , 'qq' , 'ydb_dkw' , 'chh_12d' , '12d' , 'jd_dkw' , 'hds_dkw' , 'ksd_12d' , 'ttym_dkw' , 'ios' , 'dkwaaa' , 'gzh' , 'chaomi' , 'mmd_12d' , 'ydb_12d' , 'hjsd_dkw' , 'papadai' , 'chd_dkw') GROUP BY dc.user_sources
相关文章
- MySQL轻松实现快速导入SQL文件(mysql快速导入sql文件)
- MySQL数据库:定时安全备份(mysql数据库定时备份)
- 利用Mysql多核技术进行性能优化(mysql多核优化)
- MySQL记录被锁:事件爆发及解决之道(mysql记录被锁)
- MySQL备份:记住重要的位置(mysql备份位置)
- MySQL 操作指南:快速学习入门(mysql操作指南)
- 多条记录MySQL:批量更新多条记录(mysql同时更新)
- 查询MySQL数据库中表的数量(mysql查询表数量)
- SQL如何转换成MySQL,易学易用(sql转换成mysql)
- MySQL导出SQL数据的工具推荐(mysql导出sql工具)
- Java如何启动MySQL?(java启动mysql)
- MySQL如何输出SQL语句?25字教程速成!(mysql输出sql)
- 破解MySQL数据库密码的方法(mysql库密码)
- 防止MySQL注入:决定你系统安全的关键步骤(mysql防止sql注入)
- MySQL连接驱动下载:一步步构建最佳SQL环境(mysql连接驱动下载)
- MySQL远程使用:掌握基础知识,远程操作Mysql数据库。(mysql远程使用)
- MySQL 统计:从0到无限的计数之旅。(mysql统计个数)
- 如何通过MySQL统计重复数据?(mysql统计重复)
- 如何在 MySQL 中导出表格 SQL?(mysql导出表sql)
- 如何使用MySQL进行统计查询?(mysql 统计查询结果)
- MySQL 查询统计:总行数汇总(mysql总行数)
- MySQL批量查询让C语言操作更加高效(c mysql批量查询)
- MySQL删除外键约束操作(mysql中删除外键约束)
- MySQL数据库管理,探讨一万元单位的应用与实现(mysql万元单位)
- MySQL数据统计计算一列数据的方差(mysql一列方差)
- MySQL禁止SQL嵌套查询,如何解决(mysql不允许嵌套查询)
- MySQL窗口函数快速统计排序分组与筛选数据(mysql下的窗口函数)
- MySQL配置文件缺失怎么办(mysql下没有配置文件)
- 了解MySQL中不等于符号的正确使用方法和转义技巧(mysql 不等于 转译)