WITH T(C) AS
(
SELECT 'A;B;C;D;E' UNION ALL
SELECT 'A;B' UNION ALL
SELECT 'C;D'
)
SELECT
CASE WHEN CHARINDEX('A',C) > 0 THEN 'X' ELSE '' END AS 'A',
CASE WHEN CHARINDEX('B',C) > 0 THEN 'X' ELSE '' END AS 'B',
CASE WHEN CHARINDEX('C',C) > 0 THEN 'X' ELSE '' END AS 'C',
CASE WHEN CHARINDEX('D',C) > 0 THEN 'X' ELSE '' END AS 'D',
CASE WHEN CHARINDEX('E',C) > 0 THEN 'X' ELSE '' END AS 'E'
FROM T
Дает желаемые результаты
A B C D E
---- ---- ---- ---- ----
X X X X X
X X
X X