sql >> Database >  >> RDS >> Mysql

Mysql meerdere rij insert-select statement met last_insert_id()

Gebruik deze voor de laatste vraag

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;

De LAST_INSERT_ID() in MySQL is de EERSTE id die in een batch is gemaakt, in tegenstelling tot SCOPE_IDENTITY() in SQL Server, die de LAATSTE id is. Omdat het de eerste is, verhogen we elke rij met de variabele @rn, beginnend bij addition=0 voor de eerste rij.



  1. kan ik een alleen-lezen database openen vanuit de res/asset-map in Android zonder te kopiëren naar de databasemap?

  2. Index auto-increment voor Microsoft SQL Server 2008 R2

  3. hoe geef je een null-waarde door aan een veld met een externe sleutel?

  4. De Pearson-correlatiecoëfficiëntformule in SQL