日期:2014-05-19  浏览次数:20683 次

如何取统计流量每天的数量列表?
比如统计表结构为:
id     时间                                       ip
1       2007-06-12:11.11.11         127.0.0.1
2       2007-06-12:11.10.11         127.0.0.1
3       2007-06-11:11.11.11         127.0.0.1
4       2007-06-11:11.10.11         127.0.0.1

如何写查询结果为以下的语句:

日期                       数量
2007-06-12           2
2007-06-11           2



------解决方案--------------------

Select
Convert(Varchar(10), 时间, 120) As 日期,
Count(ip) As 数量
From
统计表
Group By
Convert(Varchar(10), 时间, 120)
Order By
日期 Desc
------解决方案--------------------
select convert(varchar(30),时间, 102) 日期,count(ip) 数量
from 表 group by convert(varchar(30),时间, 102)
------解决方案--------------------
--你的時間格式怎麼是這樣的?難道不是DateTime類型?而是字符型。
--如果是字符型

Select
Left( 时间, 10) As 日期,
Count(ip) As 数量
From
统计表
Group By
Left( 时间, 10)
Order By
日期 Desc

------解决方案--------------------
--如果时间是字符型
Create Table 统计表
(id Int,
时间 Varchar(20),
ip Varchar(10))
Insert 统计表 Select 1, '2007-06-12:11.11.11 ', '127.0.0.1 '
Union All Select 2, '2007-06-12:11.10.11 ', '127.0.0.1 '
Union All Select 3, '2007-06-11:11.11.11 ', '127.0.0.1 '
Union All Select 4, '2007-06-11:11.10.11 ', '127.0.0.1 '
GO
Select
Left( 时间, 10) As 日期,
Count(ip) As 数量
From
统计表
Group By
Left( 时间, 10)
Order By
日期 Desc
GO
Drop Table 统计表
--Result
/*
日期 数量
2007-06-12 2
2007-06-11 2
*/