ホームページ >データベース >mysql チュートリアル >SQL で時刻データを時間または 10 分間隔で効率的にグループ化するにはどうすればよいですか?
SQL 時間データのグループ化の詳細な説明
データ分析では、時系列データを処理する場合、通常、効率的に要約してパターンを特定するために、時間ごとにグループ化する必要があります。 SQL の GROUP BY
句でこれを実現できますが、グループ化の粒度を正確に指定するのが難しい場合があります。
時間または 10 分間隔でグループ化
MS SQL 2008 では、DATEPART
関数を使用して時間を時間または 10 分間隔でグループ化できます。この関数は、日付フィールドを入力として受け取り、その日付の指定された部分を返します。時間ごとにグループ化するには、次を使用します:
<code class="language-sql">GROUP BY DATEPART(HOUR, [Date])</code>
同様に、10 分間隔でグループ化します:
<code class="language-sql">GROUP BY (DATEPART(MINUTE, [Date]) / 10)</code>
日付出力からミリ秒を削除します
場合によっては、生成された日付/時刻出力からミリ秒を除外することが必要になる場合があります。これを行うには、次の式を使用できます:
<code class="language-sql">DATEPART(YEAR, DT.[Date]) -- 年份 DATEPART(MONTH, DT.[Date]) -- 月份 DATEPART(DAY, DT.[Date]) -- 天 DATEPART(HOUR, DT.[Date]) -- 小时 (DATEPART(MINUTE, DT.[Date]) / 10) -- 10分钟间隔(无毫秒)</code>
以上がSQL で時刻データを時間または 10 分間隔で効率的にグループ化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。