2015-07-05 3 views
1

Im пытается подсчитать вхождения в несколько столбцов в таблице. Все значения являются целыми числами, и все числа уникальны в каждой строке. (Т.е. вы не получите два значения, происходящие в той же строке) Структура таблицы:Подсчитайте вхождения в нескольких столбцах

ID Number1 Number2 Number3 Number4 Number5 Number6 
--------------------------------------------------------- 
    11  6  4  5  9  8 
    6  9  11  5  3  15 
    8  5  9  11  4  6 
    4  11  17  3  7  1 

Ожидаемый результат будет что-то вроде:

Number Count 
-------------- 
11  4 
6  3 
4  3 
5  3 
9  3 
3  2 
8  2 
15  1 
17  1 
7  1 
1  1 

Я попытался с помощью шарниров и различных другие методы, найденные в Интернете, но просто не могут заставить его работать правильно. Любые идеи, это похоже на простой запрос, но я просто не могу понять это правильно.

ответ

2

Если есть только 6 столбцов, то один из способов вы можете сделать это

select Number, count(*) From (select Number1 as Number from your_table 
union all 
select Number2 as Number from your_table 
union all 
select Number3 as Number from your_table 
union all 
select Number4 as Number from your_table 
union all 
select Number5 as Number from your_table 
union all 
select Number6 as Number from your_table) myTab 
group by Number; 
Смежные вопросы