Bạn không thể sử dụng bí danh trong mệnh đề WHERE. Lặp lại biểu thức (lộn xộn) hoặc nếu không hãy đặt SELECT của bạn vào một truy vấn con và sau đó đặt mệnh đề WHERE trong truy vấn bên ngoài:
SELECT Id, Name, City, State
FROM
(
SELECT
ID,
Name,
CASE T.N
WHEN 1 THEN City1
WHEN 2 THEN City2
WHEN 3 THEN City3
END AS City,
CASE T.N
WHEN 1 THEN State1
WHEN 2 THEN State2
WHEN 3 THEN State3
END AS State
FROM YourTable
CROSS JOIN (VALUES(1),(2),(3)) AS T(N)
) T1
WHERE City IS NOT NULL