【发布时间】:2018-08-31 20:29:36
【问题描述】:
我有一张人员表和他们的地址表。一个人可以有多个地址,但每个地址都有一个生效日期。
我想将人员和地址与他们的最大生效日期相关联,但我仍然坚持下面附上的查询。我得到的只是整个表格中的最大生效日期。请注意,这是 RPG,因此日期会像数字一样存储,例如今天将是 20180831,格式为 YYYYMMDD (2018-08-31)。
SELECT
PERSON.ID, PERSON.NAME, ADDRESS.ID, ADDRESS.ADD1
, ADDRESS.ADD2, ADDRESS.CITY
FROM PERSON
LEFT JOIN
(
SELECT *
FROM ADDRESS
WHERE EFF_DATE IN (SELECT MAX(EFF_DATE) FROM ADDRESS)
) AS A
ON PERSON.ID = A.ID
我知道问题出在 WHERE 子句中,但我画的是空白。
【问题讨论】: