有表A
字段
科室编号 操作 时间
6 aaa 2010-10-1
6 aaa 2010-10-5
6 aaa 2010-10-8
6 bbb 2010-10-2
6 bbb 2010-10-5
6 bbb 2010-10-26
7 xxx 2010-10-8
7 aaa 2010-10-10
6 aaa 2010-9-1
统计时间段假如2010-10-1 至2010-10-31要求达到如此结果:
科室编号 操作 次数
6 aaa 3
6 bbb 2
7 xxx 1
7 aaa 1
说明:其中‘操作’字段具体内容可以用户输入,事先不确定的
字段
科室编号 操作 时间
6 aaa 2010-10-1
6 aaa 2010-10-5
6 aaa 2010-10-8
6 bbb 2010-10-2
6 bbb 2010-10-5
6 bbb 2010-10-26
7 xxx 2010-10-8
7 aaa 2010-10-10
6 aaa 2010-9-1
统计时间段假如2010-10-1 至2010-10-31要求达到如此结果:
科室编号 操作 次数
6 aaa 3
6 bbb 2
7 xxx 1
7 aaa 1
说明:其中‘操作’字段具体内容可以用户输入,事先不确定的
from ta
where 时间 between '2010-10-1' and '2010-10-31'
group by 科室编号,操作
select 科室编号,操作,count(*) 次数
from [Table]
where datediff(day,'2010-10-1',时间)>=0 and datediff(day,时间,'2010-10-31')>=0
group by 科室编号,操作
DROP TABLE aCREATE TABLE a
(科室编号 INT,
操作 NVARCHAR(20),
时间 DATETIME)
INSERT INTO a
SELECT '6','aaa','2010-10-1'
UNION
SELECT '6', 'aaa', '2010-10-5'
UNION
SELECT '6', 'bbb', '2010-10-2'
UNION
SELECT '6', 'bbb', '2010-10-5'
UNION
SELECT '6', 'bbb', '2010-10-26'
UNION
SELECT '7', 'xxx', '2010-10-8'UNION
SELECT '7', 'aaa', '2010-10-10'
UNION
SELECT '6', 'aaa' ,'2010-9-1'
select 科室编号,操作,count(1) AS 次数
from a
where 时间 between '2010-10-1' and '2010-10-31' AND
操作 IN ('aaa','bbb')
group by 科室编号,操作