Vous allez être obligés de faire du SQL dynamique ou plusieurs requêtes.
Par exemple, dans "relation_voiture" vous avez :
id id_voiture nom_valeur type_valeur
1 12 vitesses num
2 12 finition txt
3 12 co2 dec
Et dans les tables voiture_num, voiture_txt et voiture_dec
voiture_nom
id_relation valeur
1 5
voiture_txt
2 Confort
voiture_dec
3 156.8
Vous interrogez une première fois la table des relations pour connaître l'identifiant et le type des données à récupérer.
Puis ensuite vous pouvez générer la requête finale :
1 2 3
| select v.id, v.modele, r.id, r.valeur_nom, r.valeur_type
from voiture v
inner join voiture_relation r on r.voiture_id = v.id |
Puis vous interrogez les différentes tables à partir du résultat précédent :
1 2 3 4 5 6 7 8 9 10 11
| select v.valeur
from voiture_num v
where v.id = @r_id
select v.valeur
from voiture_txt v
where v.id = @r_id
select v.valeur
from voiture_dec v
where v.id = @r_id |
Partager