Message posté par : barthsdee
----------------------------------------
Bonjour en fait c'est assez simple :
J'ai une base de données et je dois faire une vue concernant une douzaine de table,
quand il s'agit d'une jointure simple: ça passe
en revanche une des tables (appelons là table ETAT)va correspondre par exemple à une liste
d'état (neuf , bon,médiocre...) elle est décomposée en deux colonnes un ID et le
libellé
id => lib
01 => Bon
02 => Moyen
03 => Mauvais
Cette codification va pouvoir être appliquée plusieurs fois sur différents champs de la
table mère (MERE)
Dans la vue, j'essaye d'obtenir des données explicites : rapatrier les libellés
correspondant pour les différents champs ou cela s'avère nécessaire
on obtient donc
select
..... (liste des champs à prendre
MERE.etat1
MERE.etat2 (les valeurs de etat1 etat2 et etat 3 sont des valeursdont la définition
est comprise dans la table état (des id))
MERE.etat3
L'objectif est de remplacer les caleurs d'id par leur libellés (un peu à
l'instar de ce que donnerait une recherche v sous excel)
si je souhaite rapatrier la valeur lib correspondant à un état je rajoute les lignes
ETAT.lib (dans la catégorie select)
et on a ensuite
from mere
[...]
LEFT join xx.ETAT on MERE.etat1 = ETAT.id
Le souci est qu'en faisant cela on crée une jointure sur la base du champ etat1 de la
table mère mais uniquement sur ce champ, seul le libellé correspondant à cet état pourra
être rapatrié.
PS: Rajouter des jointures pour les champs MERE.etat2 et MERE.etat3 ne marche pas
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=352595#p352595
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net