Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Instrukcja wstawiania i zaznaczania wielu wierszy Mysql z last_insert_id()

W przypadku ostatniego zapytania użyj tego

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() w MySQL jest PIERWSZYM identyfikatorem utworzonym w partii, w przeciwieństwie do SCOPE_IDENTITY() w SQL Server, który jest OSTATNIM identyfikatorem. Ponieważ jest to pierwszy, zwiększamy każdy wiersz za pomocą zmiennej @rn, zaczynając od addition=0 dla pierwszego rzędu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Utwórz indeks na ogromnej tabeli produkcyjnej MySQL bez blokowania tabeli

  2. Pokaż hosta MySQL za pomocą polecenia SQL

  3. Zrzuć wszystkie tabele w formacie CSV, używając „mysqldump”

  4. Awaria MySQL podczas uruchamiania

  5. Administrator Django MySQL powolny INNER JOIN