【发布时间】:2021-08-10 04:02:01
【问题描述】:
所以这个对你们大多数人来说应该很简单:
我的表有一个 ID、一个 order_id 和一个状态。 同一个order_id可能有多个ID。
我需要做的是从每个 order_id 中获取最后一个 ID,这很简单:
SELECT order_id, max(ID) AS last_id
FROM mytable
GROUP BY order_id
现在,我还需要获取与最后一个 ID 相关联的状态,所以我想做的是:
SELECT order_id, max(ID) AS last_id, x.status
FROM mytable t
LEFT JOIN (SELECT ID, status
FROM mytable) x ON last_id = x.ID
我知道我不允许使用 last_id 别名来加入子查询,因为它说它不存在。那我该怎么办呢?
【问题讨论】:
标签: sql postgresql join subquery