【发布时间】:2021-07-01 16:43:12
【问题描述】:
我需要从三个不同的表中选择七列,仅当其中一列具有特定值时。当两列(TAGNAME 和TAGNUMMER)都重复时,我还需要只选择最后一个日期。我正在使用以下代码:
select c.AKEY, c.AKT_DATUM, c.TAGNAME, c.TAGNUMMER,
cd.TEILANLAGEN_ID, x.TP_GSAP_KZ, c.KLASSEN_ID
from T0EM01 c, T0EM03 x, T0AD07 cd
where cd.TEILANLAGEN_ID = '219A'
inner join
(select c.TAGNAME and c.TAGNUMMER max(C.AKT_DATUM)
where T0EM01 c c.TAGNAME and T0EM01 c c.TAGNUMMER = m.max_date
直到where cd.TEIANLAGEN_ID = '219A' 都可以正常工作(但有超过 200 万行)。
如何过滤,以便当TAGNAME 和TAGNUMMER 在两行或多行中重复时,我只选择最新的日期?
【问题讨论】:
-
JOIN。JOIN。JOIN.
标签: sql oracle oracle12.1