Prb de syntaxe avec une Variable dans un script SQL 2005
Bonjour les amis,
J'ai encore un problème, que voici:
Code:
1 2 3 4 5 6
|
Set @COLS = 'Valeur1, Valeur2, ValeurN'
SELECT * FROM
(SELECT DISTINCT chp1, Chp2, Chp3, Chp4 FROM MaTable) AS p
PIVOT (MAX(Chp3) FOR Chap2 IN (@COLS)) AS pvt |
Me retourne : Syntaxe incorrecte vers '@COLS'.
Qq aurait-il une idée?:roll:
dans le fonds, j'ai contourné le problème
...comme suit:
Code:
1 2 3 4 5 6 7
|
SET @COLS = 'Valeur1, Valeur2, ValeurN'
SET @sSQL = 'SELECT * FROM
(SELECT DISTINCT chp1, Chp2, Chp3, Chp4 FROM MaTable) AS p
PIVOT (MAX(Chp3) FOR Chap2 IN (' + @COLS + ')) AS pvt;'
EXEC(@sSQL); |
et ça fonctionne;-) mais ça n'explique pas pq j'avais ce prb.