Bon, puisque personne ne veut répondre, j'ai déjà trouvé un début de réponse :
SELECT distinct nombatiment, largeur, longueur, hauteur
FROM
(SELECT bat.nombat as nombatiment,bat.idbat,car.valeur as largeur from caracbat car ,batiment bat WHERE car.idcarac = 'C01' AND car.idbat = bat.idbat) ss
CROSS JOIN
(SELECT bat.nombat as nombat,bat.idbat,car.valeur as longueur from caracbat car ,batiment bat WHERE car.idcarac = 'C02' AND car.idbat = bat.idbat) tt
CROSS JOIN
(SELECT bat.nombat as nombat,bat.idbat,car.valeur as hauteur from caracbat car ,batiment bat WHERE car.idcarac = 'C03' AND car.idbat = bat.idbat) vv
where
ss.idbat = tt.idbat
and
tt.idbat = vv.idbat
Pour l'instant, le résultat qui m'est renvoyé est de la forme que je souhaitai. Le problème est que si un des bâiments n'a pas toute les caractéristiques de la table "Caractéristique", celui ci est complètement chapoté et n'apparaît pas dans cette liste. Ce que j'aimerai, c'est que la ligne entière apparaissent et que pour la caractéristique qui n'est pas référencée, la cellule montre une valeur "null".
A+
Partager