首页 > 解决方案 > MySQL - SELECT * 加上另一个字段语法

问题描述

使用 MySQL,我似乎能够做这样的事情:

SELECT *, name
FROM Customers

但是如果我颠倒顺序,我会得到一个语法错误:

SELECT name, *
FROM Customers

我试过给name别名,但没有帮助。我知道我可以通过在同一张表上的连接来做到这一点,但我希望有一种简单的语法可以让它在没有自连接的情况下工作。这是否可以使用另一种语法,或者我是否坚持只能在使用星号 (*) 选择全部之后而不是之前添加额外的查询结果字段?

标签: mysqlsql

解决方案


MySQL 往往比其他关系数据库引擎更宽松,但即便如此,我也不会依赖它。来自文档(强调我的):

*对选择列表中的其他项目使用不合格的可能会产生解析错误。为避免此问题,请使用合格的tbl_name.*参考

可靠且便携的替代方案是:

SELECT name, Customers.*
FROM Customers

推荐阅读