SQL Server 2008 - Instrukcje Case / If w klauzuli SELECT [duplikat]

To pytanie ma już odpowiedź tutaj:

Jak wykonać JEŻELI… NASTĘPNIE w SQL SELECT? 25 odpowiedzi

Mam zapytanie, które powinno działać w ten sposób -

If(var = xyz) 
   SELECT col1, col2
ELSE IF(var = zyx)
   SELECT col2, col3
ELSE
   SELECT col7,col8

FROM 

.
.
.

Jak mogę to osiągnąć w T-SQL bez pisania osobnych zapytań dla każdej klauzuli? Obecnie używam go jako

IF (var = xyz) {
  Query1
}
ELSE IF (var = zyx) {
  Query2
}
ELSE {
  Query3
}

To tylko dużo zbędnego kodu, aby wybrać różne kolumny w zależności od wartości. Jakieś alternatywy?

questionAnswers(6)

yourAnswerToTheQuestion