Vous ne pouvez pas utiliser une variable dans le order by
clause. Au lieu de cela, vous devez faire quelque chose comme :
order by (case when @groupBy = 'VRNOA' then VRNOA
. . .
end)
Soyez prudent, cependant, car si les colonnes sont de types différents, des événements inattendus peuvent se produire ou entraîner une autre erreur. (Il existe une alternative à l'utilisation de SQL dynamique, mais je ne le recommanderais pas.)
Aussi, le nom @groupby
est un peu trompeur. « Regroupement » est un terme SQL équivalent à « agrégation ». Ne serait pas @OrderBy
ou @SortBy
serait plus approprié ?