Gunakan pernyataan SELECT untuk mengemas kini jadual dalam SQL Server
SQL Server menggunakan pernyataan INSERT...SELECT
untuk memasukkan hasil pernyataan SELECT
ke dalam jadual. Artikel ini meneroka sama ada operasi kemas kini yang serupa boleh dilakukan menggunakan pernyataan SELECT
.
Bolehkah SQL Server mengemas kini jadual menggunakan SELECT?
Tidak seperti pernyataan INSERT...SELECT
, SQL Server tidak menyokong sintaks UPDATE...SELECT
secara asli. Walau bagaimanapun, kefungsian yang serupa boleh dicapai menggunakan gabungan pernyataan JOIN
dan SET
.
Kemas kini menggunakan JOIN dan SET
Untuk mengemas kini jadual dengan data daripada pernyataan SELECT
, ikut langkah berikut:
JOIN
untuk memadankan baris yang akan dikemas kini. SET
, nyatakan lajur yang akan dikemas kini dan nilai sepadannya daripada pernyataan SELECT
. WHERE
untuk menapis baris bagi memastikan hanya baris yang dimaksudkan terjejas. Sebagai contoh, pertimbangkan pertanyaan berikut:
<code class="language-sql">UPDATE Table_A SET Table_A.col1 = Table_B.col1, Table_A.col2 = Table_B.col2 FROM Some_Table AS Table_A INNER JOIN Other_Table AS Table_B ON Table_A.id = Table_B.id WHERE Table_A.col3 = 'cool';</code>
Dalam contoh ini, pernyataan UPDATE
mengubah suai lajur Table_B
dan Table_A
dalam col1
dengan data daripada baris col2
yang sepadan. INNER JOIN
memastikan bahawa hanya baris dengan nilai id
yang sepadan dikemas kini, manakala klausa WHERE
mengehadkan kemas kini kepada baris yang col3
sama dengan 'sejuk' .
Atas ialah kandungan terperinci Bolehkah SQL Server Mengemas kini Jadual Menggunakan Pernyataan SELECT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!