如何将member_casual字段两类值的COUNT统计结果显示在同一列?
解决方案
你需要对member_casual字段分组统计,用GROUP BY替代原来的行转列写法即可,SQL语句如下:
SELECT member_casual AS `Row`, COUNT(*) AS member_casual FROM `table` GROUP BY member_casual;
结果说明
这条语句会按member_casual的两个取值分别分组,统计每组的记录数,最终输出格式完全符合你的期望:
| Row | member_casual |
|---|---|
| casual | 1531839 |
| member | 2799921 |
补充说明
你原来的写法是通过CASE表达式实现行转列,把两行数据合并成一行、拆分为多列;而现在需要的是相反的列转行逻辑,用GROUP BY分组统计是最简洁高效的方式——因为你的字段只有两个固定取值,不需要额外处理空值或其他异常情况。
内容的提问来源于stack exchange,提问作者Efrain
相关产品推荐
相关产品推荐

