Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh mengumpulkan Data Siri Masa ke dalam Segmen Tersuai Menggunakan MySQL?

Bagaimanakah saya boleh mengumpulkan Data Siri Masa ke dalam Segmen Tersuai Menggunakan MySQL?

DDD
DDDasal
2025-01-04 12:07:36696semak imbas

How Can I Group Time Series Data into Custom Segments Using MySQL?

Mengumpulkan Data Siri Masa ke dalam Segmen

Apabila bekerja dengan data siri masa yang disampel pada selang masa yang tetap, ia selalunya menjadi perlu untuk mengagregatkan data berbanding tertentu segmen masa. Ini memperkasakan penganalisis dan jurutera data untuk mendapatkan cerapan daripada aliran dan corak data dengan cara yang lebih bermakna.

Sebagai contoh, pertimbangkan jadual yang mengumpulkan sampel setiap dua saat. Untuk menganalisis variasi dalam nilai kiraan dalam tempoh masa yang lebih lama, anda mungkin mahu mengumpulkan sampel ke dalam tetingkap 10 atau 30 saat. Dengan menjumlahkan atau purata nilai kiraan dalam setiap segmen, anda boleh memerhati corak yang mungkin dikaburkan apabila melihat titik masa individu.

Query MySQL untuk Segmentasi

Untuk mencapai matlamat ini pembahagian data dalam MySQL, anda boleh menggunakan klausa GROUP BY bersama-sama dengan operasi aritmetik pada lajur time_stamp. Dengan membahagikan cap masa UNIX bagi setiap sampel dengan selang yang dikehendaki, anda boleh mengumpulkan sampel ke dalam segmen berdasarkan perbezaan masanya.

Pertimbangkan pertanyaan berikut untuk mengumpulkan sampel kepada segmen 30 saat:

GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 30

Pertanyaan ini akan membuat kumpulan untuk setiap selang 30 saat dalam julat masa anda data.

Menyesuaikan Sempadan Segmen

Sempadan selang boleh disesuaikan lagi menggunakan ungkapan r dalam klausa GROUP BY. Dengan menambahkan nilai integer positif r pada cap masa UNIX sebelum membahagikan, anda boleh mengalihkan sempadan segmen.

Sebagai contoh, untuk mencipta segmen 20 saat bermula pada hh:mm:05 dan berakhir pada hh:mm 1 :05:

GROUP BY (UNIX_TIMESTAMP(time_stamp) + 5) DIV 30

Pertanyaan ini akan mengumpulkan sampel ke dalam segmen 20 saat dengan segmen pertama bermula pada hh:mm:05 dan penghujung terakhir pada hh:mm 1:05.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengumpulkan Data Siri Masa ke dalam Segmen Tersuai Menggunakan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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