Det behøver du ikke, du kan komme uden om det ved at gøre sådan noget som
SELECT *
FROM [Query]
WHERE (@Parameter = 1 AND Column1 = 8)
OR (@Parameter = 2 AND Column2 = 8)
OR (@Parameter = 3 AND Column3 = 8)
Men bare fordi du kan gøre noget, betyder det ikke, at du skal. Mindre udførlig SQL betyder ikke bedre ydeevne, så brug af noget som:
IF @Parameter = 1
BEGIN
SELECT *
FROM [Query]
WHERE Column1 = 8
END
ELSE IF @Parameter = 2
BEGIN
SELECT *
FROM [Query]
WHERE Column2 = 8
END
ELSE IF @Parameter = 3
BEGIN
SELECT *
FROM [Query]
WHERE Column3 = 8
END
mens svarende til den første forespørgsel burde resultere i bedre ydeevne, da den vil blive optimeret bedre.