sql >> Database >  >> RDS >> Mysql

De index van een ingevoegde rij ophalen

LAST_INSERT_ID() heeft sessiebereik.

Het retourneert de identiteitswaarde die in de huidige sessie is ingevoegd.

Als u geen rijen invoegt tussen INSERT en LAST_INSERT_ID , dan zal het goed werken.

Houd er echter rekening mee dat voor het invoegen van meerdere waarden de identiteit van de eerste ingevoegde rij wordt geretourneerd, niet de laatste:

INSERT
INTO    mytable (identity_column)
VALUES  (NULL)

SELECT  LAST_INSERT_ID()

--
1

INSERT
INTO    mytable (identity_column)
VALUES  (NULL), (NULL)

/* This inserts rows 2 and 3 */

SELECT  LAST_INSERT_ID()

--
2

/* But this returns 2, not 3 */


  1. Hoe kan ik twee MySQL-tabellen samenvoegen?

  2. MySQL-standaarddatabase

  3. Hoe meerdere rijen samenvoegen?

  4. Oracle Analytic-functies - een windowing-clausule opnieuw instellen