sql多条件统计

本文探讨了如何在SQL中进行多条件统计,以统计社区内每栋楼每个年龄段的人数为例,解释了如何利用GROUP BY和COUNT结合CASE函数处理不确定和确定条件,将两种查询合并,得出统计结果。关键在于理解一个条件作为数据项,另一个作为字段名。
摘要由CSDN通过智能技术生成

下面这种查询就是多条件统计

image

假设现在我们要统计某个社区每栋楼每个年龄段的人数。

年龄段的范围是我们自己制定的,所以作为确定条件,我们把它当作字段名的列。

每个社区有几栋楼是不一定的,作为不确定条件,我们把它放在最左侧的数据项中。

这样查询结果的样子大可以想象出来了吧现出来了。

拆开来看就会变的明白了!!

如果你只统计小区内每个楼的人数?

很明显列表中楼是作为数据查询出来的,这时候可以借助group by.

group by 查询出来的数据会显示在数据列表中,你也不需要考虑有多少栋楼。

select  s.sname,count(s.*) 
    FROM storied_building s 
    INNER JOIN building b ON s.id = b.storied_buildid 
    INNER JOIN people p ON p.buildid = b.id  
    where s.communityid = 1 group by s.sname;

(中间的关联你可以忽略)

image

只统计每个小区内各个年龄段的人数?

各个年龄段要成为字段名,我们使用 count函数和case来完成我们的需求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值