Bonjour est-il possible d'utiliser un "case" dans un "where", exemple :
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select ... from ... where (case when @variable=2 then champs1 = 'TITI else champs1='TOTO' end )
Bonjour est-il possible d'utiliser un "case" dans un "where", exemple :
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select ... from ... where (case when @variable=2 then champs1 = 'TITI else champs1='TOTO' end )
Oui, mais comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select ... from ... where champs1 = (case when @variable=2 then 'TITI' else 'TOTO' end )
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous,
N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton
et pensez aux balises [code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.
oui mais si je veux plutot mettre dans mon where :
comment puis-je faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part case when @variable=2 then champs1 = 'TITI' else champs1 like '%TOTO%' end
Merci
Comme ça :
S'il n'y a pas de caractères joker dans la chaîne comparée, LIKE est équivalent à =
Code : Sélectionner tout - Visualiser dans une fenêtre à part champs1 LIKE (CASE WHEN @variable = 2 THEN 'TITI' ELSE '%TOTO%' END)
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous,
N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton
et pensez aux balises [code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.
Partager