Pernyataan SQL Server DELETE dengan INNER JOIN: Mengelakkan Ralat Sintaks
Panduan ini menerangkan cara menggunakan INNER JOIN
dengan betul dalam pernyataan DELETE
dalam SQL Server, menangani ralat sintaks biasa. Ralat, "Sintaks salah berhampiran kata kunci 'INNER'," sering berlaku disebabkan oleh peninggalan dalam struktur pernyataan DELETE
.
Memahami Ralat dan Penyelesaiannya
Mesej ralat menunjukkan bahawa SQL Server tidak dapat menentukan baris jadual mana yang harus dipadamkan. Penyelesaian melibatkan penentuan jadual sasaran secara eksplisit menggunakan alias jadual.
Contoh Sintaks yang Betul
Kod diperbetulkan berikut menunjukkan penggunaan yang betul:
<code class="language-sql">DELETE w FROM WorkRecord2 w INNER JOIN Employee e ON e.EmployeeRun = w.EmployeeNo WHERE Company = '1' AND Date = '2013-05-06';</code>
Di sini, w
bertindak sebagai alias untuk jadual WorkRecord2
. Ini dengan jelas menetapkan WorkRecord2
sebagai jadual dari mana baris akan dipadamkan berdasarkan syarat INNER JOIN
. INNER JOIN
itu sendiri memautkan WorkRecord2
dan Employee
jadual berdasarkan syarat cantum yang ditentukan (e.EmployeeRun = w.EmployeeNo
), menapis pemadaman kepada hanya baris yang memenuhi kriteria klausa WHERE
.
Atas ialah kandungan terperinci Bagaimana untuk Memadam Data Dengan Betul Menggunakan INNER JOIN dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!