L'obtention de la première ligne de la JOINTURE EXTERNE GAUCHE

J'ai 3 tables:

(SELECT DISTINCT ID
FROM IDS)a
LEFT OUTER JOIN
(SELECT NAME, ID
FROM NAMES)b
ON a.ID = b.ID
LEFT OUTER JOIN
(SELECT ADDRESS FROM ADDRESSES
WHERE ROWNUM <2
ORDER BY UPDATED_DATE DESC)c
ON a.ID = c.ID

Un ID ne peut avoir qu'un seul nom, mais peut avoir plusieurs adresses. Je veux seulement la dernière. Cette requête renvoie l'adresse null, même quand il y a une adresse, je suppose cause il ne récupère que la première adresse de la table et ensuite essaie de GAUCHE JOINDRE à l'ID d'adresses, il cano trouver. Quelle est la bonne façon d'écrire cette requête?

Le exemple est incomplète. Veuillez inclure le schéma de la table (comme CREATE TABLE consolidés), les données de l'échantillon (comme INSERT) et les résultats escomptés.

OriginalL'auteur Eosphorus | 2012-05-11