如何编写查询以在数据库中每分钟获取查询数量,该数据库由日志文件提供

时间:2012-06-08 09:51:33

标签: sql sql-server-2008 reporting-services

表(日志分析器)结构是:

Table of Log

我想绘制一个显示每分钟请求数的折线图。我想编写一个显示两列的查询,其中包含以下信息:

  1. 日期:时:分
  2. 请求数
  3. 我试图编写一个显示每小时请求的示例查询:

    SELECT ( Str(Datepart(HOUR, TimeLog)) + '.00' ) AS 'From (hours)',
           ( Str(CASE
                   WHEN Datepart(HOUR, TimeLog) + 1 = 24 THEN 00
                   ELSE Datepart(HOUR, TimeLog) + 1
                 END) + '.00' )AS 'To (hours)',
           Count(DISTINCT Request) AS 'Number Of Queries '
    FROM   LogData
    GROUP  BY Datepart(HOUR, TimeLog);
    

    问题在于,当我使用MINUTE代替HOUR时,它结合了分钟 所有小时和天,所以它只显示60行。我想根据日期和时间将所有行分开。如何实现这一目标?

1 个答案:

答案 0 :(得分:2)

select  convert(nvarchar(16), TimeLog, 120) requestTime,
        count(*)
from    LogData
group by convert(nvarchar(16), TimeLog, 120)`
相关问题