Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Filtre basé sur un nom de colonne avec alias

Vous ne pouvez pas référencer des alias dans une clause where comme celle-ci... vous devez soit dupliquer le CASE dans le WHERE, soit vous pouvez utiliser une sous-requête comme celle-ci :

SELECT id, myAlias
FROM
(
    SELECT id, CASE WHEN <snip extensive column definition> END AS myAlias
    FROM myTable
) data
WHERE myAlias IS NOT NULL