Mysql
 sql >> Database >  >> RDS >> Mysql

Istruzione di selezione inserimento riga multipla Mysql con last_insert_id()

Per l'ultima query, usa questo

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() in MySQL è il PRIMO ID creato in un batch, a differenza di SCOPE_IDENTITY() in SQL Server che è l'ULTIMO ID. Poiché è la prima, incrementiamo ogni riga utilizzando la variabile @rn, a partire da addition=0 per la prima riga.