我有3张桌子:
(SELECT DISTINCT ID
FROM IDS)a
LEFT OUTER JOIN
(SELECT NAME, ID
FROM NAMES)b
ON a.ID = b.ID
LEFT OUTER JOIN
(SELECT ADDRESS FROM ADDRESSES
WHERE ROWNUM <2
ORDER BY UPDATED_DATE DESC)c
ON a.ID = c.ID
Run Code Online (Sandbox Code Playgroud)
ID只能有一个名称,但可以有多个地址.我只想要最新的一个.即使存在地址,此查询也会将地址返回为null,因为它只会从表中获取第一个地址,然后尝试LEFT JOIN到它无法找到的地址ID.编写此查询的正确方法是什么?