การ Select คอลัมน์ที่เป็น Reserved Words (from, to)
คำว่า FROM และ TO เป็น **Reserved Words** ใน MySQL หากใช้เป็นชื่อคอลัมน์ ต้องห่อด้วย **Backtick (`)** ทุกครั้งที่อ้างอิง
Syntax
SELECT `to`, `from` FROM your_table_name;
ตัวอย่างการสร้างตารางและใช้งาน
สร้างตารางชื่อคอลัมน์เป็น from และ to:
mysql> CREATE TABLE DemoTable720 (
`from` DATE,
`to` DATE
);
Query OK, 0 rows affected (0.69 sec)
mysql> INSERT INTO DemoTable720 VALUES
('2019-01-21', '2019-07-23'),
('2017-11-01', '2018-01-31'),
('2015-08-11', '2016-09-19');
Query OK, 3 rows affected
ข้อมูลทั้งหมด (SELECT * ทำงานได้เพราะไม่ระบุชื่อคอลัมน์):
mysql> SELECT * FROM DemoTable720;
+------------+------------+ | from | to | +------------+------------+ | 2019-01-21 | 2019-07-23 | | 2017-11-01 | 2018-01-31 | | 2015-08-11 | 2016-09-19 | +------------+------------+ 3 rows in set (0.00 sec)
SELECT ระบุชื่อคอลัมน์ **ต้องใช้ Backtick**:
mysql> SELECT `to`, `from` FROM DemoTable720;
+------------+------------+ | to | from | +------------+------------+ | 2019-07-23 | 2019-01-21 | | 2018-01-31 | 2017-11-01 | | 2016-09-19 | 2015-08-11 | +------------+------------+ 3 rows in set (0.00 sec)
Reserved Words ที่พบบ่อยและควรหลีกเลี่ยง/ใช้ Backtick
| คำ | ความหมาย |
|---|---|
| SELECT, FROM, WHERE | Query Basics |
| ORDER, GROUP, BY | Sorting/Grouping |
| KEY, INDEX, PRIMARY | Constraints |
| TABLE, DATABASE, VIEW | Objects |
| LEFT, RIGHT, JOIN | Joins |
| TO, FROM, INTO | Directions |
| USER, PASSWORD, ROLE | Security |
| DATE, TIME, TIMESTAMP | Types |