Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh mengumpulkan Selang Masa dalam MS SQL Server 2008?
Pengumpulan Selang Masa MS SQL Server 2008
Apabila bekerja dengan data berasaskan masa, mengumpulkan rekod mengikut selang masa seperti jam atau minit adalah berguna. Dalam Microsoft SQL Server 2008, klausa GROUP BY
menyediakan cara yang mudah untuk melakukan ini.
Kod berikut menunjukkan cara mengumpulkan rekod mengikut jam:
<code class="language-sql">SELECT [Date] FROM [FRIIB].[dbo].[ArchiveAnalog] GROUP BY DATEPART(HOUR, [Date])</code>
Untuk mengumpulkan rekod mengikut selang 10 minit, gunakan sintaks berikut:
<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>
Walau bagaimanapun, pertanyaan ini mengembalikan nilai datetime yang mengandungi milisaat. Untuk mengecualikan milisaat, tambahkan kod berikut pada pertanyaan anda:
<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>
Atas ialah kandungan terperinci Bagaimanakah saya boleh mengumpulkan Selang Masa dalam MS SQL Server 2008?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!