Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Membahagikan Selang Masa (cth., 10 Saat, 30 Saat) Menggunakan SQL GROUP BY?

Bagaimanakah Saya Boleh Membahagikan Selang Masa (cth., 10 Saat, 30 Saat) Menggunakan SQL GROUP BY?

DDD
Lepaskan: 2025-01-05 02:05:40
asal
886 orang telah melayarinya

How Can I Segment Time Intervals (e.g., 10 Seconds, 30 Seconds) Using SQL's GROUP BY?

PILIH / KUMPULAN MENGIKUT - Membahagikan Selang Masa (10 Saat, 30 Saat, dsb.)

Untuk menangani permintaan pengagregatan data julat masa tersuai dalam jadual siri masa, kita boleh menggunakan klausa GROUP BY. Walau bagaimanapun, mekanisme pengumpulan standard mungkin tidak sejajar dengan segmen yang diingini.

Untuk mengumpulkan data ke dalam selang 10 saat atau 30 saat, kami boleh memanfaatkan fungsi UNIX_TIMESTAMP untuk menukar cap masa kepada perwakilan angka dan kemudian menggunakan pengendali DIV. Sebagai contoh, untuk mengumpulkan dalam selang 30 saat:

GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 30
Salin selepas log masuk

Begitu juga, untuk selang 20 saat:

GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 20
Salin selepas log masuk

Untuk melaraskan sempadan segmen, kita boleh menggunakan formula berikut:

GROUP BY (UNIX_TIMESTAMP(time_stamp) + r) DIV 30
Salin selepas log masuk

Di mana 'r' mewakili integer bukan negatif kurang daripada 30. Untuk contoh, untuk mengumpulkan dalam selang 15 saat:

GROUP BY (UNIX_TIMESTAMP(time_stamp) + 5) DIV 30
Salin selepas log masuk

Ini akan menjana segmen daripada hh:mm:05 hingga hh:mm:35 dan dari hh:mm:35 hingga hh:mm 1:05. Dengan menggunakan teknik ini, kami boleh mengagregatkan data dengan berkesan pada selang masa yang disesuaikan, membolehkan analisis berbutir dan ringkasan data.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membahagikan Selang Masa (cth., 10 Saat, 30 Saat) Menggunakan SQL GROUP BY?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan