首頁 >資料庫 >mysql教程 >如何在 SQL Server 中將時間間隔(每小時或 10 分鐘)進行分組?

如何在 SQL Server 中將時間間隔(每小時或 10 分鐘)進行分組?

DDD
DDD原創
2025-01-15 14:56:47496瀏覽

How to Group Time Intervals (Hourly or 10-Minute) in SQL Server?

SQL Server 中的時間區間分組

在資料分析中,按時間區間分組資料對於識別模式和趨勢至關重要。本文探討如何在 Microsoft SQL Server 2008 中實作時間分組,並具體說明以小時或 10 分鐘分組的方法。

以小時或 10 分鐘分組

要按小時分組時間,請使用 DATEPART(HOUR, [Date]) 函數。對於 10 分鐘的間隔,請使用 (DATEPART(MINUTE, [Date]) / 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 中將時間間隔(每小時或 10 分鐘)進行分組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn