34,838
社区成员




select
a.*,b.*,c.*
from a
left join b
on b.aid=a.id and not exists(select 1 from b t where t.aid=b.aid and t.[date]>b.[date])
left join c
on c.aid=a.id and not exists(select 1 from c t where t.aid=c.aid and t.[date]>c.[date])
left join c
on d.aid=a.id and not exists(select 1 from d t where t.aid=d.aid and t.[date]>d.[date])
SELECT A.*,B.RP1,C.RP2,D.RP3
FROM TA A
INNER JOIN (SELECT * FROM TB T WHERE NOT EXISTS(SELECT 1 FROM TB WHERE AID=T.AID AND DATE>T.DATE))B ON A.ID=B.AID
INNER JOIN (SELECT * FROM TC T WHERE NOT EXISTS(SELECT 1 FROM TC WHERE AID=T.AID AND DATE>T.DATE))C ON A.ID=C.AID
INNER JOIN (SELECT * FROM TD T WHERE NOT EXISTS(SELECT 1 FROM TD WHERE AID=T.AID AND DATE>T.DATE))D ON A.ID=D.AID