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

Cách truy vấn tất cả bảng có chứa tên cột cụ thể trong MySQL


Để truy vấn tất cả bảng có chứa tên cột cụ thể, dùng toán tử LIKE trên INFORMATION_SCHEMA.COLUMNS.

Ví dụ

Truy vấn tìm tất cả bảng có cột chứa 'ID':

mysql> Select Column_name as 'ColumnName', Table_name As 'Tablename' 
    FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE COLUMN_NAME LIKE '%ID%' 
    ORDER BY Tablename LIMIT 10;
+-------------+---------------+
| ColumnName  | Tablename     |
+-------------+---------------+
| id          | arena         |
| id          | arena1        |
| ID          | cars          |
| ID          | COLLATIONS    |
| ID          | copy_cars     |
| COUNTRY_ID  | countries     |
| REGION_ID   | countries     |
| Customer_Id | customers     |
| Customer_Id | customer_view |
| id          | emp           |
+-------------+---------------+
10 rows in set, 0 warnings (0.15 sec)

Giải thích:

  • INFORMATION_SCHEMA.COLUMNS chứa metadata tất cả cột của tất cả bảng
  • LIKE '%ID%' tìm cột chứa chuỗi 'ID' (không phân biệt hoa thường)
  • LIMIT 10 giới hạn 10 kết quả đầu
Cách này hữu ích khi cần tìm kiếm schema hoặc hiểu cấu trúc cơ sở dữ liệu lớn.