Rumah > Soal Jawab > teks badan
P粉5961619152023-07-31 00:45:30
Berdasarkan penerangan anda, anda ingin mengemas kini lajur parent_id dalam jadual anak berdasarkan nilai padanan antara jadual pengguna dan jadual induk. Anda ingin mengemas kini parent_id dalam jadual anak dengan usersId daripada jadual pengguna dan user_id daripada jadual induk.
Anda boleh melakukan ini menggunakan pertanyaan SQL berikut:
UPDATE Children c SET c.parent_id = ( SELECT p.user_id FROM users u JOIN parent p ON u.email = p.mEmail OR u.email = p.fEmail WHERE c.parent_id IS NULL -- Only update rows with NULL parent_id to avoid overwriting existing values LIMIT 1 -- Assuming you want to update one parent_id per child record; you may modify this as needed );
Penjelasan:
Pastikan anda membuat sandaran pangkalan data anda sebelum menjalankan sebarang pertanyaan kemas kini, hanya untuk selamat. ,
Mengenai kebimbangan anda tentang prestasi apabila entri pangkalan data berkembang, pertanyaan ini harus cekap selagi terdapat indeks yang sesuai pada lajur yang berkaitan, seperti e-mel dalam jadual pengguna dan mEmail dan fEmail dalam jadual induk. Indeks akan mempercepatkan proses carian dengan ketara, terutamanya apabila bekerja dengan set data yang besar.