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

Gunakan CTE untuk MEMPERBARUI atau MENGHAPUS di MySQL

Karena CTE tidak dapat diperbarui, Anda perlu merujuk ke tabel asli untuk menghapus baris. Saya pikir Anda sedang mencari sesuatu seperti ini:

WITH ToDelete AS 
(
   SELECT ID,
          ROW_NUMBER() OVER (PARTITION BY lastName, firstName ORDER BY ID) AS rn
   FROM mytable
)   
DELETE FROM mytable USING mytable JOIN ToDelete ON mytable.ID = ToDelete.ID
WHERE ToDelete.rn > 1; 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengubah Collation ke utf8_bin sekaligus

  2. mengirim sms massal berhenti di tengah

  3. Pengambilan Data Android Dari Basis Data Tidak Berfungsi (php + json + mysql)

  4. MySQL Pilih 7 hari terakhir

  5. segarkan div php dinamis menggunakan jquery