首页/数据/数据库速查/表别名与列别名
本包目录(495 条)
MySQL 基础与连接36 条
SQL 语法52 条
用户与权限21 条备份与恢复56 条主从复制与高可用53 条性能与调优57 条Redis 命令96 条Redis 运维与场景124 条

表别名与列别名

用 AS 或空格给表列起短别名,让多表查询更清晰;别名还常用于自连接区分同一张表的两份引用。

数据库速查数据更新于 2026-10-12
用途可读性与歧义消除
语法SELECT 列 AS 别名;FROM 表 AS 别名
自连接同一表两次引用必须区分别名

用法示例

用法示例
SELECT o.id, o.amount, u.name
FROM orders AS o
JOIN users AS u ON u.id = o.user_id;

自连接示例

自连接示例
SELECT e.name AS emp, m.name AS mgr
FROM employees e
LEFT JOIN employees m ON m.id = e.manager_id;
列别名不能用在 WHERE(除 HAVING/ORDER BY),因为 WHERE 执行时 SELECT 列表还没算出来。

易错点

  • 别名含空格或关键字要用反引号,且客户端转义规则各异,稳妥做法是不用特殊字符
  • 同一层查询里别名不能与原表名冲突,否则 MySQL 报 ambiguous

数据来源与参考

  • MySQL 8.0 Reference Manual: SELECT - Aliases

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌