Скажем, у меня есть таблица со столбцом ID и несколько столбцов свойств MyTable (ID, PI, P2, P3, P4)Условный UNPIVOT в TSQL
ID P1 P2 P3 P4
1 A1 B C1 D1
2 C1 C2 B NULL
3 C2 Z NULL NULL
4 X A1 C1 NULL
Итак, мне нужно написать запрос чтобы узнать, сколько различных значений свойств там, независимо от того, в каком столбце они находятся.
Value Count
A1 2
B 2
C1 3
C2 2
X1 1
...
Я думаю, что я могу получить это с помощью UNPIVOT (поправьте меня, если я ошибаюсь)
Теперь, как я могу получить подобное количество, но группируются по количеству ненулевых значений в строке (подсчет ненулевых значений в строку может, или не может включать в себя ключевые столбцы, не имеет значения), то есть выход, как это:
Value NonNullCount Count
A1 3 1
A1 4 1
B 3 1
B 4 1
C1 2 3
C1 4 1
C2 3 1
C2 2 1
...