Bonjour,
Mon problème est le suivant:
Je dispose d'une requete qui me renvoie une "table" A composée de trois colonnes :
Akey la clef,
Acontenu le contenu interressant ("métier") de A,
Aordre un numero d'ordre du contenu Acontenu pour la clef Akey. (Minimum : 1, maximum: 3)
On pourra donc avoir par exemple:
1 | Blabla | 1
1 | Blibli | 2
2 | Bloblo | 1
2 | Blibli | 2
2 | Blabla | 3
3 | Bleble | 1
Je veux ensuite passer toutes les lignes "contenu" d'une même clef sur une seule ligne de type:
Akey | Acontenu où Aordre = 1 | Acontenu où Aordre = 2 | Acontenu où Aordre = 3 soit Akey | Acontenu1 | Acontenu2 | Acontenu3
Si il n'y a pas de lignes correspondant au numOrdre, la colonne de résult reste nulle, avec l'exemple précédant, on doit donc avoir:
1 | Blabla | Blibli | null
2 | Bloblo | Blibli | Blabla
3 | Blabla | null | null
Je peux faire ça avec un double join sur la première requête, mais c'est pas très propre et si la volumétrie augmente, ça devient moche...
Quelqu'un connait une solution élégante à ce problème? (En oracle 11g)
Merci d'avance
Partager