Вы можете использовать это, чтобы получить имена столбцов, которые не имеют никаких значений.
declare @T table (Col1 int, Col2 int, Col3 int, Col4 int, Col5 int)
insert into @T values (1, 1, 1, null, null)
insert into @T values (2, 2, null, null, null)
insert into @T values (3, null, null, null, null)
insert into @T values (null, null, null, null, null)
select [Column]
from
(select
count(Col1) as Col1,
count(Col2) as Col2,
count(Col3) as Col3,
count(Col4) as Col4,
count(Col5) as Col5
from @T) as T
unpivot
([Count] for [Column] in
(Col1, Col2, Col3, Col4, Col5)
) as unpvt
where [Count] = 0
Результат
Column
------
Col4
Col5