Didierdu92
Messages postés6Date d'inscriptionvendredi 19 août 2005StatutMembreDernière intervention27 juin 2012
-
13 déc. 2007 à 19:29
mementosql
Messages postés4Date d'inscriptionsamedi 23 août 2008StatutMembreDernière intervention27 août 2008
-
23 août 2008 à 16:14
Bonjour,
Voici l'objet de ma question. J'ai une table TABLE qui contient 3 colonnes COL1, COL2 et COL3. Le résultat de ma requête doit être la concaténation des valeurs conrtenues dans les colonnes COL1 et COL2 (séparé par un '_') + la valeur contenue dans COL3 mais avec une subtilité. Prenons l'exemple suivant
Mais dans COL2, on peut avoir une valeur générique que l'on appelera VALGEN qui regroupe l'ensemble des valeurs spécifiques VAL21, VAL22, VAL23, ... (genre VALGEN='Véhicule' si VAL21, VAL22, VAL23 devaient être respectivement 'Voiture', 'Camion', 'Moto'), d'où la subtilité/
Si çà doit arriver, voilà comment la requête doit se comporter :
Prenons maintenant cet exemple :
C'est à dire que les couples VAL11\VALGEN et VAL12\VALGEN sont traités comme les autres mais en plus les couples VAL11\VAL21 et VAL12\VAL22 récupèrent respectivement la valeur de la colonne COL3 des couples VAL11\VALGEN et VAL12\VALGEN
J'espère avoir été clair dans mes explications.
Je vous remercie par avance de votre aide car je suis un peu perdu.
mementosql
Messages postés4Date d'inscriptionsamedi 23 août 2008StatutMembreDernière intervention27 août 20081 23 août 2008 à 16:14
Bonjour,
Aller, je me lance ; si j ai bien compris ton pb (pas sur), voici ce que je propose
select col1 || '_' || col2 recol1, col3 from tatable
union select t1.col1 || '_' || t1.col2 rescol1, t2.col3 from tatable t1 inner join tatable t2 on (t1.col1t2.col1 and T2.col2 'VALGEN' and t1.col2 <> 'VALGEN')
order by rescol1