Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

T-SQL alias dinâmico sem usar SQL dinâmico


Não, você não pode alterar o nome do alias com base no valor, a menos que use SQL dinâmico.

Ao selecionar as colunas, você só pode ter um nome/alias para cada coluna.

Se você quiser nomes de colunas diferentes, poderá usar alguns como o seguinte, que usa diferentes instruções de seleção:
IF @testing = 'choice'
    select 1 as 'Chose'
ELSE 
    select 1 as 'didntChoose'   

Ou você pode retornar duas colunas separadas:
select 
    case when @testing = 'choice' then 1 else 0 end Chose,
    case when @testing <> 'choice' then 1 else 0 end DidNotChose