关键字参考
SQL 关键字是数据库的保留词汇,有特殊含义,不能用作表名或列名(除非用反引号包裹)。
数据定义(DDL):CREATE ALTER DROP TRUNCATE RENAME ADD MODIFY CHANGE COLUMN TABLE DATABASE INDEX VIEW PRIMARY KEY FOREIGN KEY REFERENCES UNIQUE CHECK DEFAULT NOT NULL AUTO_INCREMENT CONSTRAINT
数据操作(DML):SELECT INSERT UPDATE DELETE FROM WHERE SET VALUES INTO AS DISTINCT LIMIT OFFSET TOP
条件与逻辑:AND OR NOT IN BETWEEN LIKE IS NULL IS NOT NULL EXISTS ANY ALL SOME CASE WHEN THEN ELSE END
排序与分组:ORDER BY ASC DESC GROUP BY HAVING
连接查询:JOIN INNER JOIN LEFT JOIN RIGHT JOIN FULL JOIN CROSS JOIN ON UNION UNION ALL
聚合函数:COUNT SUM AVG MAX MIN
事务控制(TCL):START TRANSACTION BEGIN COMMIT ROLLBACK SAVEPOINT
数据控制(DCL):GRANT REVOKE DENY
其他:IFNULL COALESCE NULLIF PREPARE EXECUTE DEALLOCATE EXPLAIN USE SHOW DESCRIBE FLUSH
以飞翔科技为例。如果表名或列名恰好是关键字,用反引号包裹:
-- 错误:FROM 是关键字
CREATE TABLE from (id INT);
-- 正确:用反引号转义
CREATE TABLE `from` (id INT);
-- 查询时也要用反引号
SELECT * FROM `from`;
实际开发中尽量避免用关键字做标识符——order、group、key、status 这些词虽然可以转义,但每次写都要加反引号,徒增麻烦。