집 >데이터 베이스 >MySQL 튜토리얼 >MS SQL Server 2008에서 시간 간격을 어떻게 그룹화할 수 있습니까?
MS SQL Server 2008 시간 간격 그룹화
시간 기반 데이터로 작업할 때 시간 또는 분과 같은 시간 간격으로 레코드를 그룹화하는 것이 유용합니다. Microsoft SQL Server 2008에서는 GROUP BY
절을 사용하여 이 작업을 수행하는 편리한 방법을 제공합니다.
다음 코드는 시간별로 레코드를 그룹화하는 방법을 보여줍니다.
<code class="language-sql">SELECT [Date] FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY DATEPART(HOUR, [Date])</code>
10분 간격으로 레코드를 그룹화하려면 다음 구문을 사용하세요.
<code class="language-sql">SELECT MIN([Date]) AS RecT, AVG(Value) FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY DATEPART(HOUR, [Date]), (DATEPART(MINUTE, [Date]) / 10) ORDER BY RecT</code>
그러나 이 쿼리는 밀리초가 포함된 날짜/시간 값을 반환합니다. 밀리초를 제외하려면 쿼리에 다음 코드를 추가하세요.
<code class="language-sql">GROUP BY DATEPART(YEAR, DT.[Date]), DATEPART(MONTH, DT.[Date]), DATEPART(DAY, DT.[Date]), DATEPART(HOUR, DT.[Date]), (DATEPART(MINUTE, DT.[Date]) / 10)</code>
위 내용은 MS SQL Server 2008에서 시간 간격을 어떻게 그룹화할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!