Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MySQL | Anda tidak dapat menentukan tabel target 'a' untuk pembaruan dalam klausa FROM

Anda tidak dapat menghapus dari tabel dan mereferensikan tabel yang sama dalam subkueri — hanya batasan MySQL. Sesuatu seperti berikut ini akan berfungsi:

DELETE FROM table_a 
USING table_a
INNER JOIN table_b
    ON table_a.code = table_b.code
    AND table_b.id = table_a.b_id
    AND table_b.table = 'testTable'
WHERE table_a.object_id = 1 
    AND table_a.code = 'code' 

Bagian yang penting adalah USING . Jika Anda hanya menggabungkan dua tabel, Anda akan menghapus rekaman dari keduanya. USING memberitahu MySQL untuk menggunakan tabel ini untuk diproses, tetapi hanya menghapus dari tabel di FROM klausa.

http://dev.mysql.com/doc/refman/5.0 /en/delete.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pelajari MySQL – Minggu Teknologi Baru

  2. mysql PDO cara mengikat LIKE

  3. Instal mysqldb di macan tutul salju

  4. JDBC Buat Tabel Contoh Penggunaan Pernyataan

  5. Bagaimana menemukan perbedaan waktu rata-rata antara baris dalam sebuah tabel?