Bonjour,
Dans une procédure stockée, je voudrais selon qu'un parametre est renseigné ou non que la clause WHERE s'adapte sachant que la clause WHERE contient un IN
J'ai trouvé une fonction qui transforme une chaine en une liste utilisable dans un IN.
L'adresse de la fonction est ici : http://www.devx.com/tips/Tip/20009
La fonction s'appelle dbo.UTILfn_Split
Voici la requete "à ma facon" qui ne marche pas mais qui se rapproche le plus du succès je crois.
Le problème est le message
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT * from MATABLE WHERE CHAMPID IN ( Case When 1=1 then ((select value from dbo.UTILfn_Split ('11,12', ','))) else CHAMPID end)Bref, je suis bloqué. Merci de votre aideLa sous-requête a retourné plusieurs valeurs. Cela n'est pas autorisé quand la sous-requête suit =, !=, <, <= , >, >= ou quand elle est utilisée en tant qu'expression.
Partager