Bonjour à tous,
Ceci n'est pas une question, pour une fois, mais plutôt une information.
Je ne sais pas si c'était connu de beaucoup, enfin bref la voici.

Il s'agit de chercher dans une table des Id assignés à une variable. le principe étant que le
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Where IdPrestation in @Variable
ne fonctionne pas.
On peut donc utiliser la syntaxe suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
DECLARE @IdPrestationMultiple VARCHAR(MAX)
SELECT @IdPrestationMultiple = ',11,4,55,'
 
SELECT * FROM DimPrestation
WHERE NOT ISNULL(CHARINDEX(','+CAST(IdPrestationId AS VARCHAR(MAX))+',', @IdPrestationMultiple), NULL) = 0
Bonne utilisation si ça peut vous servir.



EDIT : Après un peu plus d'utilisation, cela ne fonctionne que si les valeurs recherchées sont bien distinctes.

EDIT 2 : Finalement en ajoutant des virgules en début et fin de la variable, cela fonctionne très bien même pour des entiers.