LAST_INSERT_ID()
У розробці бази даних ми часто використовуємо сурогатний ключ для створення унікальних цілих значень для стовпця первинного ключа таблиці за допомогою AUTO_INCREMENTатрибута:
CREATE TABLE table_name(
    id INT AUTO_INCREMENT,
    ...,
    PRIMARY KEY(id)
);Коли ви вставляєте рядок у таблицю, не вказуючи значення для idстовпця, MySQL автоматично генерує послідовне унікальне ціле число для idстовпця.
Функція LAST_INSERT_ID()повертає автоматично згенероване ціле число ( BIGINT UNSIGNED), успішно вставлене в  AUTO_INCREMENTстовпець.
Якщо ви вставляєте кілька рядків у таблицю за допомогою одного INSERTоператора, LAST_INSERT_ID()функція повертає лише перше автоматично згенероване значення.
Якщо вставка не вдається, результат, який повертає, LAST_INSERT_ID()залишається незмінним.
Функція LAST_INSERT_ID()працює за клієнтонезалежним принципом. Це означає, що значення, яке повертає LAST_INSERT_ID()функція для конкретного клієнта, є значенням, згенерованим цим клієнтом лише для того, щоб кожен клієнт міг отримати свій власний унікальний ідентифікатор.
Повна стаття: https://www.mysqltutorial.org/mysql-last_insert_id.aspx
Див. також:
AUTO_INCREMENT у складовому індексіLast updated