发布网友 发布时间:2022-04-22 13:17
共4个回答
热心网友 时间:2022-04-08 08:17
实现思路:
第一步:先将所有子集数据进行分组。
sql:select classname from tablename1 group by classname;
第二步:将需要统计的结果用count函数进行计数即可。
sql:select classname, count( username) from tablename1 group by classname;
解释:以上语句就是统计出某个班级的所有同学的个数。
热心网友 时间:2022-04-08 09:35
没有看懂,
以你的数据示例来说,cid=1 如何 取出5个记录数的? cid=5,又如何得出0 的 ?追问从表一的关系可以看出CID=2和4的记录的父节点ID为1,而CID=5的父节点ID为2,所以CID=5的记录也是属于父节点ID为1的,是子集的子集,所以表二中CID为2、1、4、5的均属于cid=1的记录是5条,以此类推CID=3的记录则为0
追答分一定要给我,累死我了
select tb1.cid,name,
(select count(tb.id) from
(select CONNECT_BY_ROOT(t1.cid) rootid,t1.cid
from tb1_test t1
connect by prior t1.cid = t1.pid start with t1.pid = 0) ta
,TB2_TEST tb
where ta.cid = tb.cid and ta.rootid = tb1.cid) sum
from tb1_test tb1
where pid = 0
热心网友 时间:2022-04-08 11:09
select a.CID,a.name, count(*) SUM from TABLE TB2_TEST a ,TABLE TB1_TEST b where
a.CID=b.CID group by a.CID,a.name
热心网友 时间:2022-04-08 13:01
select CID,NAME,(select sum(ID) from TB2_TEST where TB2_TEST.CID=T.CID) from TB1_TEST T追问谢谢回答
但并未满足我的需求,我再补充一下
1、目标:是统计表二TB2_TEST中数据
2、展示:查询只显示表一TB1_TEST中一级节点CID、NAME及表二中记录数SUM
3、数据:不只是统计一级节点下的表二记录数,而是表二中对应表一所有一级节点下的所有子节点的记录数;
不知道这样描述清楚了不
追答select CID,NAME,(select count(ID) from TB2_TEST where TB2_TEST.CID=T.CID) from TB1_TEST T