显然,Oracle 不允许对子查询进行外部连接。对于表 A 上的每一行,我正在尝试在表 B 上找到具有相同 ID 和最新日期的行。
像这样的东西:
SELECT a.*, b.date, b.val1, b.val2
FROM a, b
WHERE b.id (+) = a.id
AND b.date (+) = (SELECT MAX(b.date) FROM a, b WHERE a.id = b.id);
删除 b.date 上的外连接 (+) 可以对其进行解析,但是当表 B 上没有行时,不会返回任何行。在这种情况下,我需要查询只返回 NULL。有没有解决的办法?
谢谢