Requête sql - condition "si"

Fermé
Nejhi - 10 mars 2011 à 10:25
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 - 10 mars 2011 à 10:27
Bonjour,

Je cherche à écrire une requête qui a le fonctionnement suivant :
Voici la requête réalisée :

Select DISTINCT cases.shorttitle,tc.countrydescription "Pays"
From cases, tablecountry tc
Where cases.casetypekey = 1
and cases.propertytypekey = 2
and (tc.countrycode='SN'
or tc.countrycode = (select distinct case when tc1.aipoconvention=1 then
(select tc2.countrycode from tablecountry tc2 where tc2.countrykey='142') else '' end
from tablecountry tc1
where "('SN', 'BJ','BF','CM', 'CF','CG','CI','GA','GN','GW','GQ','ML','MR','NE','TD','TG')))
and cases.countrykey=tc.countrykey

- Si je sélectionne un pays contenu dans la liste de valeur "tc1.countrycode in" alors les données contenant cette valeur ainsi que la valeur "tc2.countrykey='142'" sont extraites : cette partie fonctionne correctement
- Je souhaiterai que la requête fonctionne même pour des valeurs qui ne sont pas contenu dans la liste. Par exemple : FR (France). Je souhaite que si je selectionne la France seules les données liées à la France soient extraites. or, actuellement les données extraites sont celles de la France et "tc2.countrykey='142'" (=AIPO).

Merci avance pour votre aide.

1 réponse

moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
10 mars 2011 à 10:27
Salut
Il manque un truc
where "('SN', 'BJ','BF','CM', 'CF','CG','CI','GA','GN','GW','GQ','ML','MR','NE','TD','TG')))

where quoi ? ya pa de champ
0