sql >> Databáze >  >> RDS >> Mysql

Mysql víceřádkový příkaz insert-select s last_insert_id()

Pro poslední dotaz použijte toto

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() v MySQL je PRVNÍ ID vytvořené v dávce, na rozdíl od SCOPE_IDENTITY() na serveru SQL Server, který je POSLEDNÍM ID. Protože je první, zvyšujeme každý řádek pomocí proměnné @rn počínaje addition=0 pro první řadu.



  1. Jak vytvořit dotaz s group_concat na serveru SQL

  2. čárkami oddělený řetězec vybraných hodnot v mysql

  3. PHP:Nedefinovaná funkce mysql_connect()

  4. Jak nastavit databázi WordPress MySQL v cloudu