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

Hiển thị tên cột trừ một số cột cụ thể trong MySQL

Truy vấn INFORMATION_SCHEMA.COLUMNS kết hợp NOT IN và GROUP_CONCAT để liệt kê tên cột cần thiết.

Tạo bảng mẫu

mysql> CREATE TABLE DemoTable780(
    CustomerId INT,
    CustomerName VARCHAR(100),
    CustomerAge INT,
    CustomerCountryName VARCHAR(100),
    IsMarried TINYINT(1)
); 
Query OK, 0 rows affected (0.47 sec)

Truy vấn lấy tên cột trừ CustomerId và CustomerCountryName

mysql> SELECT GROUP_CONCAT(COLUMN_NAME) 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'web' 
  AND TABLE_NAME = 'DemoTable780' 
  AND COLUMN_NAME NOT IN ('CustomerId', 'CustomerCountryName') 
GROUP BY TABLE_SCHEMA, TABLE_NAME;

Kết quả:

+------------------------------------+
| GROUP_CONCAT(COLUMN_NAME)          |
+------------------------------------+
| CustomerName,CustomerAge,IsMarried |
+------------------------------------+

Ứng dụng: Tự động sinh câu lệnh SELECT động, tạo view, hoặc kiểm tra schema trong code ứng dụng.

Lưu ý: Thay 'web' bằng tên database thực tế của bạn.