我正在尝试计算表中多列的出现次数。所有值都是整数,并且每行中的所有数字都是唯一的。 (即您不会在同一行中出现两个值)表结构是:
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
我尝试过使用枢轴和互联网上找到的各种其他方法,但似乎无法使其正常工作。任何想法,这似乎是一个简单的查询,但我就是无法正确理解。
最佳答案
如果只有 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;
关于mysql - 计算多列中出现的次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31227563/