有一张表,里面有字段
A B C
---------------------
01 42F9A
0101 E654B 01
0102 EC7D5 01
0103 CBC99 02
0104 C5480 01
0105 95EAC 01
02 73718
0201 F626F 01
0202 044FB 02
0203 EAD27 02
(注:0101为01的下级,0201为02的下级)
我想在这张表里统计出A列下的01和02的下级有多少,A列下的01和02下的C列中01有多少,02有多少高手请帮忙看看,我对SQL语句写的比较少,原来都写些简单的
A B C
---------------------
01 42F9A
0101 E654B 01
0102 EC7D5 01
0103 CBC99 02
0104 C5480 01
0105 95EAC 01
02 73718
0201 F626F 01
0202 044FB 02
0203 EAD27 02
(注:0101为01的下级,0201为02的下级)
我想在这张表里统计出A列下的01和02的下级有多少,A列下的01和02下的C列中01有多少,02有多少高手请帮忙看看,我对SQL语句写的比较少,原来都写些简单的
--A列下 01 02 多少个
select count(substring(A,1,2)) -1 from yyq4 group by substring(A,1,2)--以此类推
一 二 三 四
-------------------
01 5 4 1
02 3 1 2要出这样的
再请高手帮忙
一 二 三 四
-------------------
01 5 4 1
02 3 1 2要出这样的
再请高手帮忙
select a.id, a.cnt,b.cnt,c.cnt from (select substring(A,1,2) id, count(substring(A,1,2)) -1 cnt
from tabName group by substring(A,1,2)) a,
(select C id,count(C) cnt from tabName
where A like '01%' and C <> '' group by C) b,
(select C id,count(C) cnt from tabName
where A like '02%' and C <> '' group by C) c
where a.A = b.A and a.A = c.A
-----------------------------------------------
id a.cnt b.cnt c.cnt
'01', 5, 4, 1
'02', 3, 1, 2