order by
で変数を使用することはできません 句。代わりに、次のようにする必要があります:
order by (case when @groupBy = 'VRNOA' then VRNOA
. . .
end)
ただし、列の型が異なると、予期しないことが発生したり、別のエラーが発生したりする可能性があるため、注意してください。 (動的 SQL を使用する別の方法もありますが、お勧めしません。)
また、名前 @groupby
少し誤解を招く可能性があります。 「グループ化」は、「集計」に相当する SQL 用語です。 @OrderBy
ではありません または @SortBy
より適切ですか?