sql 多列统计

来源:百度知道 编辑:UC知道 时间:2024/06/16 21:24:51
统计所有数字在该列出现的次数

1 1 1 2
3 2 3 1
1 2 1 2
2 1 2 3
统计结果为:

数字 第一列 第二列 第三列 第四列
1 2 2 2 1
2 1 2 1 2
3 1 0 1 1

select t1.a id ,nvl(次数a,0) 第一列, nvl(次数b,0) 第二列,nvl(次数c,0) 第三列,nvl(次数d,0) 第四列
(select a, count(a) 次数a from biao ) t1
left join (select b, count(b) 次数b from biao ) t2 on (t1.a=t2.b)

left join (select c,count(c) 次数c from biao ) t3 on (t3.c=t1.a)
left join (select d,count(d) 次数d from biao ) t4 on (t4.d=t1.a)
根据你现在的数据,这样写可以,不过不知道你的数据列多不多。你试试吧