Kemas kini data jadual menggunakan Oracle SQL
Apabila berurusan dengan pangkalan data hubungan seperti Oracle SQL, anda mungkin menghadapi senario di mana anda perlu mengemas kini jadual dengan data daripada jadual lain. Tugasan ini biasanya dilakukan menggunakan perintah UPDATE SQL.
Soalan:
Andaikan terdapat dua jadual, Jadual 1 dan Jadual 2, kedua-duanya mengandungi lajur id, nama dan desc, dan anda dikehendaki mengemas kini data dalam Jadual 1 dengan data yang sepadan dalam Jadual 2 berdasarkan nilai id yang sepadan. Hasil yang diinginkan ialah jadual 1 harus dikemas kini dengan nama dan nilai desc yang sepadan dengan nilai id dalam jadual 2.
Penyelesaian:
Untuk melaksanakan kemas kini ini, anda boleh menggunakan kemas kini yang berkaitan dalam Oracle SQL. Berikut ialah kaedah terperinci:
<code class="language-sql">UPDATE table1 t1 SET (name, desc) = (SELECT t2.name, t2.desc FROM table2 t2 WHERE t1.id = t2.id) WHERE EXISTS ( SELECT 1 FROM table2 t2 WHERE t1.id = t2.id );</code>
Arahan:
Pendekatan alternatif (dengan andaian kunci mengekalkan pandangan):
Jika gabungan antara Jadual 1 dan Jadual 2 menghasilkan paparan pemeliharaan kunci, anda juga boleh menggunakan kaedah berikut:
<code class="language-sql">UPDATE (SELECT t1.id, t1.name name1, t1.desc desc1, t2.name name2, t2.desc desc2 FROM table1 t1, table2 t2 WHERE t1.id = t2.id) SET name1 = name2, desc1 = desc2;</code>
Arahan:
Atas ialah kandungan terperinci Bagaimana untuk Mengemas kini Jadual SQL Oracle dengan Data dari Jadual Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!