Bonjour à tous

Après des mois de lectures attentivers des forums fournis, je me décide à poser une question, car je n'ai pas trouvé de réponse.

Je voudrais mettre plusieurs valeurs dans une variable de ma procédure, car je ne recherche pas toujours la même quantité de valeurs.

Ou autrement dit :
Comment faire fonctionner ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
ALTER       PROCEDURE sp_retrieve
@variablekey			varchar,
@entitykey			int
AS
BEGIN			
	SELECT 
		VariableKey, 
		PeriodKey,
		YTDValue
	FROM 
		Operational_Data
	WHERE
		EntityKey=@entitykey
	and	VariableKey in (@variablekey)
	Order by PeriodKey
END
Sachant que @variablekey peut contenir soit :
'2'
ou '2','3'
ou '2','3','86' ...

De plus ceci fonctionne parfaitement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
ALTER       PROCEDURE sp_retrieve
@entitykey			int
AS
BEGIN			
	SELECT 
		VariableKey, 
		PeriodKey,
		YTDValue
	FROM 
		Operational_Data
	WHERE
		EntityKey=@entitykey
	and	VariableKey in ('2','3')
	Order by PeriodKey
END
Merci de m'aiguiller

Pierre