一尘不染

运行子查询时获取错误代码 1054

sql

我正在尝试获取使用此创建的最旧帐户的用户:

SELECT a.ID
     , a.username 
  FROM users a 
  JOIN 
     ( SELECT MAX(date_created) 
        FROM other_info
     ) b 
    ON a.ID = b.ID; 

它返回以下内容;`错误代码:1054。

“on 子句”中的未知列“b.ID”

我查看了 [mysql-error-1054]标签,但找不到解决方案,我什至不确定查询的哪一部分是错误的。

谢谢。


阅读 110

收藏
2021-05-30

共1个答案

一尘不染

要查找第一个(最旧的)date_created 的用户:

SELECT u.ID, a.username, b.date_created
FROM users a
INNER JOIN other_info b
ORDER BY b.date_created
LIMIT 1

顺便说一句,而不是a,b等等,我宁愿选择表的别名,使意义,如u对users。

2021-05-30