olivthill | Dans ce cas, il faudrait remplacer INNER JOIN par LEFT JOIN.
Voir http://forum.hardware.fr/hfr/Progr [...] 7208_1.htm
Par ailleurs, bien que INNER JOIN et LEFT JOIN soit standard, en pratique, on utilise assez peu cette syntaxe lourde et peu lisible. A la place, sous Oracle, on utilise
SELECT tmp4.name_prefix,
tmp4.cfa,
...
tmp2.credit_card_number,
...
tmp3.secretaire,
...
tmp1.BUS_TRAVELER_ROLLUP_TYPE_DESC,
...
FROM tmp_export_profils_portrait4 tmp4,
tmp_export_profils_portrait3 tmp3,
tmp_export_profils_portrait2 tmp2, tmp_export_profils_portrait1 tmp1
WHERE tmp4.pin_number = tmp3.pin_number
AND tmp3.pin_number = tmp2.pin_number
AND tmp2.pin_number = tmp1.pin_number; |
ou pour remplacer les left join,
SELECT tmp4.name_prefix,
tmp4.cfa,
...
tmp2.credit_card_number,
...
tmp3.secretaire,
...
tmp1.BUS_TRAVELER_ROLLUP_TYPE_DESC,
...
FROM tmp_export_profils_portrait4 tmp4,
tmp_export_profils_portrait3 tmp3,
tmp_export_profils_portrait2 tmp2, tmp_export_profils_portrait1 tmp1
WHERE tmp4.pin_number (+) = tmp3.pin_number
AND tmp3.pin_number (+) = tmp2.pin_number
AND tmp2.pin_number (+) = tmp1.pin_number; |
(ou le (+) de l'autre côté, je ne me souviens jamais).
|