首頁 > 資料庫 > mysql教程 > 如何在 SQL 中按小時或 10 分鐘間隔有效地對時間資料進行分組?

如何在 SQL 中按小時或 10 分鐘間隔有效地對時間資料進行分組?

Patricia Arquette
發布: 2025-01-15 14:47:45
原創
392 人瀏覽過

How Can I Efficiently Group Time Data by Hour or 10-Minute Intervals in SQL?

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板