在 MySQL 中查询指定字段需用 SELECT 明确列出列名而非 ,以提升效率与安全性;支持 AS 或空格起别名,关键字字段须用反引号包裹,避免使用 和字段名冲突。

在 MySQL 中查询指定字段,核心就是用 SELECT 后明确列出需要的列名,而不是用 * 查全部。这样做更高效、更安全,也更符合实际开发需求。
基本语法:明确写字段名
最基础的写法是:
SELECT 字段1, 字段2, 字段3 FROM 表名;
例如查员工表的姓名和工资:
SELECT last_name, salary FROM employees;
多个字段用英文逗号分隔,顺序可自定义,不强制按建表顺序;字段名区分大小写与否取决于操作系统和数据库配置,但建议统一小写以保兼容。
给字段起别名:提升可读性
字段名过长或含下划线、大小写混杂时,可用 AS 或直接空格加别名:
- SELECT salary AS monthly_income FROM employees;
- SELECT salary monthly_income FROM employees;
如果别名含空格或特殊字符(如 full name),必须用单引号或反引号包裹:
SELECT last_name AS `full name` FROM employees;
注意字段名冲突与保留字
若字段名恰好是 MySQL 关键字(如 order、group、name),直接使用会报错。此时必须用反引号(`)包裹:
SELECT `name`, `order` FROM products;
这是硬性要求,不是可选项。建表时也建议避开关键字,减少后续维护成本。
避免常见误区
- 不用
*查所有字段——除非调试或真不确定要哪些列;否则浪费 I/O 和网络带宽,尤其大表或宽表时明显拖慢应用。 - 别名不能和表中其他字段名重复,否则查询结果列头可能混淆,部分客户端甚至报错。
- 字段名拼写错误会导致“Unknown column”错误,注意检查大小写和反引号使用场景。









