SQL Server での時間間隔のグループ化
データ分析では、時間間隔ごとにデータをグループ化することがパターンと傾向を特定するために重要です。この記事では、Microsoft SQL Server 2008 で時間グループ化を実装する方法を検討し、時間または 10 分ごとにグループ化する方法を説明します。
時間または 10 分ごとにグループ化します
時間を時間ごとにグループ化するには、DATEPART(HOUR, [Date]) 関数を使用します。 10 分間隔の場合は、(DATEPART(MINUTE, [日付]) / 10) を使用します。次の変更されたクエリは、データを時間ごとにグループ化します:
<code class="language-sql">SELECT MIN([Date]) AS RecT, AVG(Value) FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY DATEPART(HOUR, [Date]) ORDER BY RecT</code>
10 分間隔の場合は、次を使用します:
<code class="language-sql">SELECT MIN([Date]) AS RecT, AVG(Value) FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY (DATEPART(MINUTE, [Date]) / 10) ORDER BY RecT</code>
日付出力からミリ秒を削除します
出力からミリ秒を除外するには、DATEPART 関数を再度使用します。
<code class="language-sql">SELECT MIN(DATEPART(HOUR, [Date])) AS RecT, AVG(Value) FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY YEAR([Date]), MONTH([Date]), DAY([Date]), HOUR([Date]) ORDER BY RecT</code>
このクエリでは、各日付コンポーネントで DATEPART 関数を使用してミリ秒を削除します。
以上がSQL Server で時間間隔 (1 時間または 10 分) をグループ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。