Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengemas kini Lajur Jadual A Berdasarkan Padanan Nama Pengguna dalam Jadual B?

Bagaimana untuk Mengemas kini Lajur Jadual A Berdasarkan Padanan Nama Pengguna dalam Jadual B?

Mary-Kate Olsen
Lepaskan: 2025-01-15 07:40:46
asal
999 orang telah melayarinya

How to Update Table A Columns Based on Matching Usernames in Table B?

Mengemas kini Jadual A berdasarkan Padanan Nama Pengguna dalam Jadual B

Panduan ini menunjukkan cara mengemas kini lajur dalam jadual table_a menggunakan data daripada table_b, memadankan baris berdasarkan lajur "nama_pengguna" biasa. Matlamatnya ialah untuk mengisi column_a_1 dan column_a_2 dalam table_a dengan nilai daripada column_b_1 dan column_b_2 dalam table_b, masing-masing, untuk memadankan nama pengguna.

Penyelesaian SQL:

Pernyataan SQL berikut cekap mencapai kemas kini ini:

UPDATE table_a
SET
    column_a_1 = (SELECT b.column_b_1 FROM table_b b WHERE b.user_name = table_a.user_name),
    column_a_2 = (SELECT b.column_b_2 FROM table_b b WHERE b.user_name = table_a.user_name)
WHERE
    EXISTS (SELECT 1 FROM table_b b WHERE b.user_name = table_a.user_name);
Salin selepas log masuk

Pertanyaan ini menggunakan subkueri untuk mengambil nilai yang sesuai daripada table_b dan menggunakannya pada baris yang sepadan dalam table_a. Klausa EXISTS memastikan bahawa hanya baris dengan nama pengguna yang sepadan dalam kedua-dua jadual dikemas kini, mengelakkan ralat jika nama pengguna wujud dalam table_a tetapi tidak dalam table_b. Menggunakan alias (seperti b untuk table_b) meningkatkan kebolehbacaan.

Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini Lajur Jadual A Berdasarkan Padanan Nama Pengguna dalam Jadual B?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan