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

Pernyataan pilih-masukkan baris mulitple mysql dengan last_insert_id()

Untuk kueri terakhir, gunakan ini

INSERT INTO dbNEW.`user` (userID, entityID, other)  
SELECT user_id, entityID, other
FROM
(
    SELECT user_id, @key + @rn entityID, other, @rn := @rn + 1
    FROM (select @rn:=0) x, dbOLD.`user`
    order by user_id
) y;

LAST_INSERT_ID() di MySQL adalah id PERTAMA yang dibuat dalam batch, tidak seperti SCOPE_IDENTITY() di SQL Server yang merupakan id TERAKHIR. Karena ini adalah yang pertama, kami menambah setiap baris menggunakan variabel @rn, mulai dari addition=0 untuk baris pertama.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tweak kinerja InnoDB

  2. Tetapkan waktu eksekusi maksimum di MYSQL / PHP

  3. Tidak dapat melewatkan parameter dengan referensi di MySQLi

  4. Panjang kolom JSON maks di MySQL

  5. Mengapa executemany lambat di Python MySQLdb?