Попытка использовать самостоятельное соединение в SQL, чтобы найти значение в таблице и применить его.
Вот что я получил:
+ ----------------- + ----- + -------- + ----------- +
|Acutal Output ||||
+ ----------------- + ----- + -------- + ---------- +
|TRKID |Fac |NewFac |BAG_TRKID |
|449 |11 |11 |999 |
|473 |11 |11 |737 |
|477 |11 |11 |737 |
|482 |11 |11 |737 |
|737 |89 |89 ||
|Желаемый Out Put ||||
|TRKID |Fac |NewFac |BAG_TRKID |
|449 |11 |11 |999 |
|473 |11 |89 |737 |
|477 |11 |89 |737 |
|482 |11 |89 |737 |
|737 |89 |89 ||
+ ----------------- + ----- + -------- + ---------- +
Вот код ниже.Кажется, я не могу получить тот стол, который хочу.Сумка Номер объекта TrkID не становится номером нового объекта TrkID.
Select
TABLEA.TRKID,
TABLEA.FAC,
NVL(TABLEA.FAC, TABLEB.FAC) as NEWFAC,
TABLEA.BAG_TRKID
FROM
(
Select
HSD. TRKID,
HSD.NLPT as FAC,
SBPD.BAG_TRKID
From
HSD
LEFT JOIN
SBPD
ON
SBPD.BAG_TRKID = HSD. TRKID
Where
HSD.SCANDT BETWEEN ‘Yesterday’ and ‘Today’
) TABLEA
LEFT JOIN
(
Select
HSD. TRKID,
HSD.NLPT as FAC,
SBPD.BAG_TRKID
From
HSD
LEFT JOIN
SBPD
ON
SBPD.BAG_TRKID = HSD. TRKID
Where
HSD.SCANDT BETWEEN ‘Yesterday’ and ‘Today’
) TABLEB
ON
TABLEA.TRKID = TABLEB.BAG_TRKID