SQL Server 2005의 카운트에 대한 타임 스탬프 무시
-
20-09-2019 - |
문제
나는 간단한 쿼리라고 생각하는 것을 알아내는 데 문제가 있습니다. 모니터링 앱의 시간 날짜 스탬프가있는 로그 특정 메시지를 추측 할 수있는 두 개의 필드 (EntryDateTime, Message)가있는 테이블이 있습니다.
나는 하루에 유형의 모든 메시지를 얻고 싶지만 스탬프의 시간 부분 (다른 모든 것에 필요한 동안)이 여기에 문제를 제기합니다.
나는 같은 일을 찾고 있었고
SELECT COUNT(Message)
FROM DBName.dbo.TableName
WHERE Message = 'LoginFailed'
GROUP BY EntryDateTime
출력으로 내가 찾고있는 것은
2009-06-26, 142
2009-06-27, 259
2009-06-28, 57
물론 이것은 나에게 더 많은 메시지를 더 많이 제공합니다.
2009-06-26 00:01:01, 11
2009-06026 00:01:02, 12
이 쿼리에 대한 타임 스탬프를 타는 데 도움이되는 것은 매우 도움이됩니다. 이 쿼리가 수년 분량의 로깅을 검색 할 것이므로 날짜 범위를 수동으로 입력 할 필요가 없으며 BETWEEN
쿼리를 입력하십시오.
해결책
다음과 같은 것을 사용하는 것은 어떻습니까 :
SELECT COUNT (Message), CONVERT(DATETIME, CONVERT(CHAR(10), EntryDateTime, 101))
FROM DBName.dbo.TableName
WHERE Message = 'LoginFailed'
GROUP BY CONVERT(DATETIME, CONVERT(CHAR(10), EntryDateTime, 101))
다른 팁
이 시도:
SELECT DATEADD(dd, DATEDIFF(d, 0, Getdate()), 0)
getDate ()를 열 이름으로 바꾸십시오.
당신은 또한이 이전을보고 싶을 것입니다 stackoverflow 질문 그리고 이것 이전 질문
제휴하지 않습니다 StackOverflow