Nếu cột dùng AUTO_INCREMENT, hàm LAST_INSERT_ID() trả về ID của dòng vừa chèn.
Cú pháp:
SELECT LAST_INSERT_ID();
Tạo bảng:
mysql> CREATE TABLE LastInsertedRow (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> UserName VARCHAR(20),
-> UserAge INT
-> );
Chèn 6 dòng:
mysql> INSERT INTO LastInsertedRow(UserName, UserAge) VALUES('John', 23), ('Carol', 24), ('Bob', 24), ('Larry', 26), ('Maxwell', 27), ('David', 22);
Hiển thị dữ liệu:
+----+----------+---------+ | Id | UserName | UserAge | +----+----------+---------+ | 1 | John | 23 | | 2 | Carol | 24 | | 3 | Bob | 24 | | 4 | Larry | 26 | | 5 | Maxwell | 27 | | 6 | David | 22 | +----+----------+---------+
Lấy ID vừa chèn:
mysql> SELECT LAST_INSERT_ID();
Kết quả: 6
Lấy toàn bộ dòng vừa chèn:
mysql> SELECT * FROM LastInsertedRow WHERE Id = (SELECT LAST_INSERT_ID());
Kết quả:
+----+----------+---------+ | Id | UserName | UserAge | +----+----------+---------+ | 6 | David | 22 | +----+----------+---------+