SQL 문에서 일정 기간 동안의 레코드 수를 집계합니다.

7841 단어

실제 응용에서는 단위 시간을 통계하는 기록 수가 자주 필요하다.
한 시간:
   SELECT 
   CONVERT(VARCHAR(10),createdate,120) AS    ,DATEPART(hh,createdate) AS   ,COUNT(*)AS     --varchar(10)       ('2016-01-01')
   FROM log                                              --   DATE      (VARCHAR(10)  DATE)
where createdate>=CASTCONVERT(VARCHAR(10),createdate,120)+' 00:00:00' and
createdate<=CAST(CONVERT(VARCHAR(10),createdate,120))+' 23:59:59'
 GROUP BY CONVERT(VARCHAR(10),createdate,120),DATEPART(hh,createdate) orderby    --group by      

30분:
   SELECT 
   CONVERT(VARCHAR(10),createdate,120) AS    ,DATEPART(hh,createdate) AS   ,COUNT(*)AS     --varchar(10)       ('2016-01-01')
   FROM log                                             --   DATE      (VARCHAR(10)  DATE)
where createdate>=CAST(CONVERT(VARCHAR(10),createdate,120))+' 00:00:00' and
createdate<=CAST(CONVERT(VARCHAR(10),createdate,120))+' 23:59:59'

GROUP BY CONVERT(VARCHAR(10),createdate,120),DATEPART(hh,createdate),DATEPART(mi,createdate)/30 -- 30 order by

1분:
   SELECT 
   CONVERT(VARCHAR(10),createdate,120) AS    ,DATEPART(hh,createdate) AS   ,DATEPART(mi,createdate) AS   ,COUNT(*)AS     
--varchar(10) ('2016-01-01') FROM log -- DATE (VARCHAR(10) DATE) where createdate>=CASTCONVERT(VARCHAR(10),createdate,120))+' 00:00:00' and createdate<=CASTCONVERT(VARCHAR(10),createdate,120))+' 23:59:59' GROUP BY CONVERT(VARCHAR(10),createdate,120),DATEPART(hh,createdate),DATEPART(mi,createdate) orderby , , --group by

 
참조:
SQL Server CONVERT() 함수 소개
정의 및 사용
CONVERT () 함수는 날짜를 새 데이터 형식으로 변환하는 일반적인 함수입니다.
CONVERT() 함수는 날짜/시간 데이터를 다른 형식으로 표시할 수 있습니다.
구문
CONVERT(data_type(length),data_to_be_converted,style)

data_type (length) 은 목표 데이터 형식을 규정합니다. (선택할 수 있는 길이가 있습니다.)data_to_be_converted는 변환할 값을 포함합니다.style에서 지정한 날짜/시간의 출력 형식입니다.
사용할 수 있는 스타일 값:
Style ID
스타일 형식
100 또는 0
mon dd yyyy hh:mi AM(또는 PM)
101
mm/dd/yy
102
yy.mm.dd
103
dd/mm/yy
104
dd.mm.yy
105
dd-mm-yy
106
dd mon yy
107
Mon dd, yy
108
hh:mm:ss
109 또는 9
mon dd yyyy hh:mi:ss:mmmAM(또는 PM)
110
mm-dd-yy
111
yy/mm/dd
112
yymmdd
113 또는 13
dd mon yyyy hh:mm:ss:mmm(24h)
114
hh:mi:ss:mmm(24h)
120 또는 20
yyyy-mm-dd hh:mi:ss(24h)
121 또는 21
yyyy-mm-dd hh:mi:ss.mmm(24h)
126
yyyy-mm-ddThh:mm:ss.mmm(공백 없음)
130
dd mon yyyy hh:mi:ss:mmmAM
131
dd/mm/yy hh:mi:ss:mmmAM
인스턴스
다음 스크립트에서는 CONVERT() 함수를 사용하여 다른 형식을 표시합니다.GETDATE() 함수를 사용하여 현재 날짜/시간을 가져옵니다.
CONVERT(VARCHAR(19),GETDATE())
CONVERT(VARCHAR(10),GETDATE(),110) 
CONVERT(VARCHAR(11),GETDATE(),106)
CONVERT(VARCHAR(24),GETDATE(),113)

결과는 다음과 같습니다.
Dec 29 2008 11:45 PM
12-29-2008
29 Dec 08
29 Dec 2008 16:25:46.635

 

좋은 웹페이지 즐겨찾기