Trả lời: CÓ, nhưng bắt buộc dùng backtick
INDEX là từ khóa dành riêng (reserved word) trong MySQL. Để dùng làm tên cột, phải bao quanh bằng backtick `.
Ví dụ minh họa
Tạo bảng với cột `index`
mysql> CREATE TABLE DemoTable (
`index` INT
);
Chèn dữ liệu
mysql> INSERT INTO DemoTable VALUES (1000), (1020), (967), (567), (1010);
Truy vấn (cần backtick)
mysql> SELECT * FROM DemoTable;
+-------+ | index | +-------+ | 1000 | | 1020 | | 967 | | 567 | | 1010 | +-------+
Sắp xếp DESC lấy top 3
mysql> SELECT * FROM DemoTable ORDER BY `index` DESC LIMIT 3;
+-------+ | index | +-------+ | 1020 | | 1010 | | 1000 | +-------+
Các từ khóa thường gặp cần backtick
| Từ khóa | Ví dụ cột |
|---|---|
| INDEX | `index` |
| KEY | `key` |
| ORDER | `order` |
| GROUP | `group` |
| SELECT | `select` |
| WHERE | `where` |
| TABLE | `table` |
| DATABASE | `database` |
| USER | `user` |
| PASSWORD | `password` |
| DESC | `desc` |
| ASC | `asc` |
Khuyến nghị
- Luôn dùng backtick cho mọi identifier (table, column, alias, database...).
- Tránh đặt tên trùng từ khóa nếu có thể:
idx,sort_order,group_id... - Cấu hình
sql_mode=ANSI_QUOTEScho phép dùng"index"(double quote) theo chuẩn SQL.