Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Truy vấn MySQL lấy tên bảng tạo gần nhất (most recent)

Sử dụng INFORMATION_SCHEMA.TABLES với sắp xếp theo CREATE_TIME giảm dần.

Ví dụ minh họa

Tạo bảng mới (sẽ là bảng mới nhất):

mysql> CREATE TABLE DemoTable1323 (FirstName VARCHAR(10));

Chèn dữ liệu:

mysql> INSERT INTO DemoTable1323 VALUES('Chris'), ('David'), ('Bob');

Truy vấn lấy bảng tạo gần nhất trong database 'web':

mysql> SELECT TABLE_NAME, CREATE_TIME AS `Time`
    FROM information_schema.tables
    WHERE table_schema = 'web'
    ORDER BY create_time DESC LIMIT 1;

Kết quả:

+---------------+---------------------+
| TABLE_NAME    | Time                |
+---------------+---------------------+
| demotable1323 | 2019-09-18 22:03:24 |
+---------------+---------------------+

Lưu ý:

  • Thay 'web' bằng tên database của bạn (DATABASE() cho DB hiện tại).
  • CREATE_TIME là thời điểm tạo bảng, không cập nhật khi ALTER TABLE.
  • Đối với engine MyISAM, có UPDATE_TIME cho lần sửa đổi dữ liệu cuối.
  • Một số engine (InnoDB file-per-table) có thể không cập nhật CREATE_TIME chính xác trong mọi phiên bản.