MySQL ORDER BY 无法使用 2 字别名

MySQL ORDER BY not working using 2-word alias

SELECT
  u.user_id AS 'ID'
, u.username AS 'Username' 
, u.lastname AS 'Last Name' 
, r.rolename AS 'Role' 
FROM user AS u , role AS r  
ORDER BY Last Name

此查询无效。但是当我尝试使用 ORDER BY 后跟 1 个单词时它起作用了。知道如何解决吗?

MySQL 引擎不知道 Last Name,但它知道 lastname,所以您的查询应该是:

SELECT u.user_id AS 'ID' , u.username AS 'Username' , u.lastname AS 'Last Name' ,
r.rolename AS 'Role' FROM user AS u , role AS r ORDER BY u.lastname

或者如果你想使用 'Last Name' 你应该使用它包含在 2 ' 中,因为它是由 space 分隔的 2 个单词。