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

Lấy danh sách giá trị cho phép của cột SET trong MySQL

Kiểu dữ liệu SET trong MySQL cho phép lưu trữ nhiều giá trị từ một danh sách xác định trước. Để xem các giá trị được định nghĩa cho cột SET, bạn dùng câu lệnh DESC (hoặc DESCRIBE) chỉ định tên cột.

Tạo bảng với cột SET

mysql> CREATE TABLE DemoTable (
    Game SET('Chess', 'Pig Dice', '29 Card')
);

Xem định nghĩa cột SET

mysql> DESC DemoTable Game;

Kết quả

+-------+-----------------------------------+------+-----+---------+-------+
| Field | Type                              | Null | Key | Default | Extra |
+-------+-----------------------------------+------+-----+---------+-------+
| Game  | set('Chess','Pig Dice','29 Card') | YES  |     | NULL    |       |
+-------+-----------------------------------+------+-----+---------+-------+

Cột Type hiển thị đầy đủ danh sách các giá trị cho phép: 'Chess', 'Pig Dice', '29 Card'.

Cách khác: Truy vấn INFORMATION_SCHEMA

SELECT COLUMN_TYPE 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = DATABASE() 
  AND TABLE_NAME = 'DemoTable' 
  AND COLUMN_NAME = 'Game';

Kết quả trả về chuỗi: set('Chess','Pig Dice','29 Card'). Bạn có thể parse chuỗi này trong ứng dụng nếu cần.

Lưu ý: Khác với ENUM (chỉ chọn 1 giá trị), SET cho phép chọn 0 đến nhiều giá trị, lưu trữ dưới dạng bitmap.