Sql查询问题
一张Sql表里面有DateTime型字段
我要将这张表中每天的记录count出来
比如:
字段一 字段二 字段三 字段四 字段五
0101001001 409322621 2005-05-31 22:14:53.777 1 220.168.53.147
0101001001 409322621 2005-05-31 17:10:34.750 0 59.191.24.159
0101001004 282128876 2005-06-01 21:10:46.873 0 59.191.15.95
0101001008 36105971 2005-05-29 17:49:24.090 1 59.191.12.117
0101001009 36105971 2005-05-29 17:53:53.513 1 59.191.13.31
......
我要求出这张表中每天的记录总和
2005-05-31 日期的共两条
2005-06-01 日期的共一条
2005-05-29 日期的共两条
这样!
问题点数:0、回复次数:4Top
1 楼yjdn(人形机器)回复于 2005-06-03 02:40:00 得分 0
select left(字段三,10),count(字段五) from 表名 group by left(字段三,10)Top
2 楼yjdn(人形机器)回复于 2005-06-03 02:48:29 得分 0
--建表
create table tn(a varchar(20),b varchar(20),c datetime,d int,e varchar(20))
insert into tn select
'0101001001' , '409322621' , '2005-05-31 22:14:53.777' , 1 , '220.168.53.147'
union all select
'0101001001' , '409322621' , '2005-05-31 17:10:34.750' , 0 , '59.191.24.159'
union all select
'0101001004' , '282128876' , '2005-06-01 21:10:46.873' ,0 , '59.191.15.95'
union all select
'0101001008' , '36105971' , '2005-05-29 17:49:24.090' ,1 , '59.191.12.117'
union all select
'0101001009' , '36105971' , '2005-05-29 17:53:53.513' ,1 , '59.191.13.31'
--查询
select left(c,10),count(e) from tn group by left(c,10)
--结果
05 29 2005 2
05 31 2005 2
06 1 2005 1
Top
3 楼yjdn(人形机器)回复于 2005-06-03 02:51:09 得分 0
或者
select 日期=convert(char(10),c,120),记录数=count(e) from tn group by convert(char(10),c,120)
--结果
2005-05-29 2
2005-05-31 2
2005-06-01 1
Top
4 楼sjsjsjsjsj()回复于 2005-06-03 13:56:03 得分 0
select 日期=convert(char(10),Insert_Date,120),
记录数=count(Insert_Date) from GuestTemp
group by
convert(char(10),Insert_Date,120)
order by 记录数
------------------------------------------------------------
我这样写了之后 能够得到一段时间内的每天记录总合 其他天数的记录都没有统计总合啊Top




