Liệt kê tên bảng theo mẫu với LIKE trong MySQL
Truy vấn information_schema.tables kết hợp LIKE để lọc tên bảng.
Cú pháp
SELECT table_name AS `ten_alias` FROM information_schema.tables WHERE table_name LIKE 'mau_ten%';
Ví dụ: Liệt kê bảng bắt đầu bằng 'DemoTable160_'
mysql> select table_name as `DemoTable1600`
-> from information_schema.tables
-> where table_name like 'DemoTable160_%';
Kết quả
+---------------+ | DemoTable1600 | +---------------+ | demotable1600 | | demotable1601 | | demotable1602 | | demotable1603 | | demotable1604 | | demotable1605 | | demotable1606 | | demotable1607 | +---------------+ 8 rows in set (0.01 sec)
Lưu ý:
- MySQL thường lưu tên bảng viết thường (lowercase) trên Linux
- Sử dụng
%làm ký tự đại diện cho bất kỳ chuỗi nào - Có thể thêm điều kiện
AND table_schema = 'ten_database'để lọc theo database
Ứng dụng: Tìm kiếm bảng theo quy ước đặt tên, dọn dẹp database, kiểm tra migration.