For a multiple-row insert, LAST_INSERT_ID() returns the AUTO_INCREMENT key from the first of the inserted rows : AUTO_INCREMENT « Table « MySQL Tutorial






mysql>
mysql>
mysql>
mysql> CREATE TABLE employee (
    ->      id MEDIUMINT NOT NULL AUTO_INCREMENT,
    ->      name CHAR(30) NOT NULL,
    ->      PRIMARY KEY (id)
    ->  );
Query OK, 0 rows affected (0.03 sec)

mysql>
mysql> INSERT INTO employee (name) VALUES ('A'),
    ->                                    ('B'),
    ->                                    ('C'),
    ->                                    ('D'),
    ->                                    ('E'),
    ->                                    ('F');
Query OK, 6 rows affected (0.00 sec)
Records: 6  Duplicates: 0  Warnings: 0

mysql>
mysql> SELECT * FROM employee;
+----+------+
| id | name |
+----+------+
|  1 | A    |
|  2 | B    |
|  3 | C    |
|  4 | D    |
|  5 | E    |
|  6 | F    |
+----+------+
6 rows in set (0.02 sec)

mysql>
mysql> select LAST_INSERT_ID();
+------------------+
| LAST_INSERT_ID() |
+------------------+
|                1 |
+------------------+
1 row in set (0.00 sec)

mysql>
mysql> drop table employee;
Query OK, 0 rows affected (0.01 sec)

mysql>








4.18.AUTO_INCREMENT
4.18.1.Use Auto_increment column as part of the key
4.18.2.To start with an AUTO_INCREMENT value other than 1
4.18.3.You can retrieve the most recent AUTO_INCREMENT value with the LAST_INSERT_ID().
4.18.4.For a multiple-row insert, LAST_INSERT_ID() returns the AUTO_INCREMENT key from the first of the inserted rows