Computer >> Máy Tính >  >> Lập trình >> MySQL

Danh tính select @@ làm gì trong MySQL?

Danh tính @@ trả về giá trị được chèn cuối cùng trong cột auto_increment trong phiên hiện tại. Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable(
   UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserName varchar(100)
);
Query OK, 0 rows affected (0.67 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable(UserName) values('David');
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable(UserName) values('Mike');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable(UserName) values('Carol');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable(UserName) values('Robert');
Query OK, 1 row affected (0.24 sec)
mysql> insert into DemoTable(UserName) values('John');
Query OK, 1 row affected (0.13 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select *from DemoTable;

Điều này sẽ tạo ra kết quả sau -

+--------+----------+
| UserId | UserName |
+--------+----------+
| 1      | David    |
| 2      | Mike     | 
| 3      | Carol    |
| 4      | Robert   |
| 5      | John     |
+--------+----------+
5 rows in set (0.00 sec)

Bây giờ, chúng tôi sẽ sử dụng @@ Identity -

mysql> select @@identity;

Điều này sẽ tạo ra kết quả sau -

+------------+
| @@identity |
+------------+
| 5          |
+------------+
1 row in set (0.00 sec)