Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mencari Rekod Terkini untuk Setiap Gabungan Kaedah dan ID dalam MySQL?

Bagaimana untuk Mencari Rekod Terkini untuk Setiap Gabungan Kaedah dan ID dalam MySQL?

DDD
Lepaskan: 2025-01-03 07:16:38
asal
703 orang telah melayarinya

How to Find the Most Recent Records for Each Method and ID Combination in MySQL?

Cara Memilih Rekod Terkini untuk Gabungan Medan dalam Jadual MySQL

Jadual MySQL yang disediakan, rpc_responses, menyimpan respons kepada panggilan RPC dengan medan termasuk cap waktu, kaedah, id dan respons. Matlamatnya ialah untuk mendapatkan semula respons terbaharu untuk gabungan kaedah dan id yang berbeza.

Untuk mencapai ini, kami boleh memanfaatkan fungsi ROW_NUMBER() MySQL dengan klausa windowing:

SELECT *
FROM (
    SELECT *, 
            ROW_NUMBER() OVER (PARTITION BY method, id ORDER BY timestamp DESC) AS row_num
    FROM rpc_responses
) AS subquery
WHERE row_num = 1
Salin selepas log masuk

Ini pertanyaan menggunakan subkueri untuk mengira nombor baris bagi setiap gabungan kaedah dan id yang berbeza, disusun dalam susunan menurun mengikut medan cap masa. Pertanyaan luar kemudiannya menapis keputusan untuk memilih hanya baris dengan baris nombor 1, yang mewakili rekod terbaharu untuk setiap gabungan.

Pendekatan ini harus mendapatkan semula data yang dikehendaki dengan cekap tanpa memerlukan gabungan kompleks atau jadual sementara .

Atas ialah kandungan terperinci Bagaimana untuk Mencari Rekod Terkini untuk Setiap Gabungan Kaedah dan ID dalam MySQL?. 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