Oracle
 sql >> Base de données >  >> RDS >> Oracle

Itérer sur les lignes d'une deuxième table pour renvoyer le jeu de résultats

Utilisez une auto-jointure ici sur la table_b table, la condition de jointure étant que table_a_id les valeurs correspondent, mais label_y> label_x .

SELECT
    b1.table_a_id,
    b1.label_x,
    b2.label_y
FROM table_a a
INNER JOIN table_b b1
    ON b1.table_a_id = a.table_a_id
INNER JOIN table_b b2
    ON b2.table_a_id = b1.table_a_id AND
       b2.label_y > b1.label_x
ORDER BY
    b1.table_a_id,
    b1.label_x,
    b2.label_y;

Démo