ENUM
Complete ENUM type reference: ENUM('v1','v2') syntax, CHARACTER SET/COLLATE options, NULL/empty string defaults, and numeric index sorting guidelines.
Last updated
Was this helpful?
Was this helpful?
CREATE TABLE fruits (
id INT NOT NULL auto_increment PRIMARY KEY,
fruit ENUM('apple','orange','pear'),
bushels INT);
DESCRIBE fruits;
+---------+-------------------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------------------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| fruit | enum('apple','orange','pear') | YES | | NULL | |
| bushels | int(11) | YES | | NULL | |
+---------+-------------------------------+------+-----+---------+----------------+
INSERT INTO fruits
(fruit,bushels) VALUES
('pear',20),
('apple',100),
('orange',25);
INSERT INTO fruits
(fruit,bushels) VALUES
('avocado',10);
ERROR 1265 (01000): Data truncated for column 'fruit' at row 1
SELECT * FROM fruits;
+----+--------+---------+
| id | fruit | bushels |
+----+--------+---------+
| 1 | pear | 20 |
| 2 | apple | 100 |
| 3 | orange | 25 |
+----+--------+---------+SELECT * FROM fruits WHERE fruit=2;
+----+--------+---------+
| id | fruit | bushels |
+----+--------+---------+
| 3 | orange | 25 |
+----+--------+---------+CREATE TABLE enums (a ENUM('2','1'));
INSERT INTO enums VALUES ('1'),('2');
SELECT * FROM enums ORDER BY a ASC;
+------+
| a |
+------+
| 2 |
| 1 |
+------+SELECT * FROM enums WHERE a=1;
+------+
| a |
+------+
| 2 |
+------+
SELECT * FROM enums WHERE a='1';
+------+
| a |
+------+
| 1 |
+------+CREATE TABLE enum_example (
description VARCHAR(20),
example ENUM('Alpha', 'Beta', 'Gamma', 'RC', 'Stable')
);INSERT INTO enum_example VALUES
('foo', 'Beta'),
('bar', 'RC'),
('baz', 'Alpha'),
('bob', 5);SELECT * FROM enum_example;
+-------------+---------+
| description | example |
+-------------+---------+
| foo | Beta |
| bar | RC |
| baz | Alpha |
| bob | Stable |
+-------------+---------+