Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mendapatkan Hanya Baris Terkini Apabila Menyertai Jadual MySQL?
Menyertai Jadual MySQL untuk Mendapatkan Hanya Baris Terkini
Dalam sistem pengurusan data, menyertai jadual adalah penting untuk menggabungkan maklumat daripada pelbagai sumber. Apabila berurusan dengan data sejarah, selalunya menjadi perlu untuk mendapatkan semula baris terbaharu daripada salah satu jadual yang digabungkan.
Pertimbangkan senario pangkalan data pelanggan yang mana data pelanggan disimpan dalam dua jadual: pelanggan dan data_pelanggan. Jadual pelanggan mengandungi maklumat pelanggan asas, manakala pelanggan_data menyimpan perubahan pada profil pelanggan. Untuk memaparkan maklumat pelanggan dalam jadual, kedua-dua jadual perlu dicantumkan, tetapi kami hanya mahukan baris terbaru daripada customer_data.
Untuk mencapai ini, anda boleh menggunakan fungsi MAX() MySQL bersama-sama dengan subquery untuk mencari ID baris terbaharu dalam data_pelanggan. Pertanyaan akan kelihatan seperti ini:
SELECT c.*, cd.value FROM customer c LEFT JOIN customer_data cd ON c.customer_id = cd.customer_id WHERE cd.customer_id = ( SELECT MAX(customer_id) FROM customer_data WHERE customer_id = c.customer_id )
Pertanyaan ini mula-mula mendapatkan semula semua lajur daripada jadual pelanggan (diawali dengan c.). Ia kemudian melakukan LEFT JOIN dengan jadual customer_data (diawali dengan cd.), menapis baris dalam customer_data untuk hanya memasukkan baris dengan customer_id maksimum untuk setiap pelanggan (seperti yang ditentukan oleh subquery).
Selain itu, sebagai disebut dalam pertanyaan rujukan, anda boleh menggunakan CONCAT() dengan SUKA untuk mencari nilai tertentu dalam lajur bercantum. Dalam pertanyaan sampel, CONCAT(tajuk,' ',nama depan,' ',nama keluarga) sedang dibandingkan dengan rentetan '%Smith%'. Ini akan mengembalikan semua nama pelanggan yang mengandungi subrentetan "Smith" di mana-mana dalam medan gabungan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Hanya Baris Terkini Apabila Menyertai Jadual MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!