读书人

求一SQL统计语句()

发布时间: 2012-03-04 11:13:33 作者: rapoo

求一SQL统计语句(在线等)
表 a
字段 b c d
张三 5 2007-5-5
李四 15 2007-5-5
王五 20 2007-5-5
张三 15 2007-5-6
王五 5 2007-5-6
现在想统计这个表中

2007-5-5 到 2007-5-6 号之间,张三、李四、王五的 c 数据

结果如下
字段 b c
王五 25
张三 20
李四 15
并且按照 c 字段倒序排列
希望大家多指教谢谢:)



[解决办法]
select b,sum(c) as c from d between '2007-5-5 ' and '2007-5-6 ' group by b order by c
试试
[解决办法]
select b,sum(c) as c from a where d between '2007-5-5 ' and '2007-5-6 ' group by b order by sum(c) desc
[解决办法]
select b, sum(c) as c from a group by b order by c desc
[解决办法]
/*

Try:

表 a
字段 b c d
张三 5 2007-5-5
李四 15 2007-5-5
王五 20 2007-5-5
张三 15 2007-5-6
王五 5 2007-5-6
现在想统计这个表中

2007-5-5 到 2007-5-6 号之间,张三、李四、王五的 c 数据

结果如下
字段 b c
王五 25
张三 20
李四 15
并且按照 c 字段倒序排列
希望大家多指教谢谢:)
*/

Declare @a table(b varchar(25),c int,d datetime)
insert into @a(b,c,d) values ( '张三 ',5, '2007-5-5 ')
insert into @a(b,c,d) values ( '李四 ',15, '2007-5-5 ')
insert into @a(b,c,d) values ( '王五 ',20, '2007-5-5 ')
insert into @a(b,c,d) values ( '张三 ',15, '2007-5-6 ')
insert into @a(b,c,d) values ( '王五 ',5, '2007-5-6 ')


Select b,Sum(c) c from @a
where datediff(day,d, '2007-5-5 ') <=0 and datediff(day, '2007-5-6 ',d) <=0
group by b
order by c Desc

--如果时间不是规则的200-5-5格式,使用datediff运算会更好一些。

读书人网 >ASP

热点推荐