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

Bagaimana mengatasi kesalahan MySQL Anda tidak dapat menentukan tabel target X untuk pembaruan dalam klausa FROM?

Alasan mengapa ini tidak berhasil adalah karena MySQL tidak mengizinkan Anda untuk mereferensikan tabel yang Anda perbarui (dapat) di dalam subkueri.

Namun hal ini dapat diatasi dengan menggunakan kueri alih-alih tabel itu sendiri di FROM, yang memiliki efek menyalin nilai tabel yang diminta alih-alih mereferensikan yang Anda perbarui.

Jadi secara efektif ini, bahkan jika kontra intuitif, akan berhasil :

DELETE FROM cancome WHERE user_id IN
 ( SELECT user_id FROM (SELECT * FROM cancome) AS cancomesub
 GROUP BY user_id HAVING COUNT(user_id)>3 )
 limit 3



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. menemukan baris terakhir berturut-turut

  2. Jumlahkan jam dari pelacak waktu ke kalender menurut hari

  3. Hitung baris di MySQL bersama dengan konten baris yang sebenarnya

  4. Mekanisme untuk melacak perubahan skema DB

  5. kategori php, sub kategori pohon