SQL如何按travelmode分组统计各分组的segment_id总数
按出行模式分组统计路段总数
直接使用分组聚合语法即可实现需求,可执行如下SQL:
SELECT travelmode, COUNT(segment_id) AS segments FROM temp_table GROUP BY travelmode ORDER BY travelmode;
语句逻辑说明
GROUP BY travelmode:按照travelmode字段的不同取值拆分数据分组,该字段存在的5类取值会各自生成独立统计分组COUNT(segment_id) AS segments:统计每个分组内segment_id非空的记录总数,将统计结果列命名为要求的segmentsORDER BY travelmode:让最终结果按travelmode取值从小到大排序,和你给出的预期输出顺序一致
执行后返回的结果结构与示例完全匹配:
travelmode segments 0 273 1 143 2 198 3 236 4 120
补充说明:如果0-4中某一个
travelmode取值在表中没有任何对应记录,上述基础语句不会返回该取值对应的行。如果需要强制返回5个取值、无数据时展示segments为0,可以通过枚举0-4的值左连原表统计的方式实现,常规统计场景下基础语句即可满足需求。
内容的提问来源于stack exchange,提问作者user12587364
相关产品推荐
相关产品推荐

