求sql分组汇总的写法,各位帮帮忙

livdan .net开发  2010-10-13 03:24:09
要求出的结果:日期,0-10t,10-20t,20-30t,30-40t,>40t
表结构:
日期,ID,重量

要求把每天通车的数量汇总,0-10t的车有多少辆,10-20t的车有多少辆,依次类推,制成表格
...全文
51 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
livdan 2010-10-13
嗯,就是我要的答案,谢谢,结贴
回复
kevn 2010-10-13
[Quote=引用 2 楼 sql2088 的回复:]
SQL code
select 日期,
[0-10t]=sum(case when 重量 between 0 and 10 then 1 else 0 end),
[10-20t]=sum(case when 重量 between 10 and 20 then 1 else 0 end),
[20-30t]=sum(case when 重量 between 20 and 30 then 1……
[/Quote]
正解
回复
SQL2088 2010-10-13
select 日期,
[0-10t]=sum(case when 重量 between 0 and 10 then 1 else 0 end),
[10-20t]=sum(case when 重量 between 10 and 20 then 1 else 0 end),
[20-30t]=sum(case when 重量 between 20 and 30 then 1 else 0 end),
[30-40t]=sum(case when 重量 between 30 and 40 then 1 else 0 end),
[>40t]=sum(case when 重量 >40 then 1 else 0 end)
from tb
group by 日期
回复
livdan 2010-10-13
现在我只能用多条Sql语句查询,0-10t的一条sql,10-20t又一天sql,如下代码

SELECT convert(varchar(100) ,T_dtTime,23) as data,count(convert(varchar(100),T_dtTime,23)) as total
FROM [TFL_GZ].[dbo].[TrafficFlow] where T_dValue>10 and T_dValue<20
group by convert(varchar(100),T_dtTime,23)
order by count(convert(varchar(100),T_dtTime,23)) desc
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2010-10-13 03:24
社区公告
暂无公告