Как я могу получить количество уникальных значений в двух столбцах таблицы? - PullRequest
0 голосов
/ 29 ноября 2018

У меня есть таблица с column1 и column2 среди других столбцов?

Мне нужно количество уникальных значений для всех строк, взятых из column1 и column2.Возможный запрос: выберите число (*) из ((выберите отдельный столбец 1 из таблицы 1) UNION (выберите отдельный столбец 2 из таблицы 1));

Мне также нужно количество уникальных значений во всех строках, как показано ниже: - "column1 "+" - "+" column2 "" column2 "+" - "+" column1 "

Возможный запрос: выберите количество (*) из ((выберите отдельный столбец1, столбец2 из таблицы1) UNION (выберите отличныйcolumn2, column1 из таблицы1))

Я думаю, что возможен недостаток с обоими запросами.

Пример данных:

Столбец 1 Столбец 2 Значение1 ноль ноль Значение1 Значение1 Значение2 Значение2 Значение2Value1 Value4 null Value5 null

Результат для запроса 1: 4 (Value1, Value2, Value4, Value5) Результат для запроса 2: 5 (Value1, Value1-Value2, Value2-Value1, Value4, Value5)

Нуль следует игнорировать, исключая дефис.Или дефис можно игнорировать.Не особенно про дефис.

1 Ответ

0 голосов
/ 29 ноября 2018

Похоже, вам нужно что-то похожее на это

SELECT 
COUNT(DISTINCT [a])

FROM    
(SELECT Column1 [a]
FROM TableA
UNION ALL
SELECT Column2
FROM TableA 

) [x]
...