SQL语句如何做递归查询 有一个表TreeNode( TreeNodeId, ParentId)如何查找一个节点,它的所有子节点不超过两个。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有一个表TreeNode( TreeNodeId, ParentId) 如何查找一个节点,它的所有子节点不超过两个。不超过两个没什么意义,不超两层的话,你可以直接用join来实现select a1.TreeNodeId,IFNULL(a2.ParentId,a1.a1.ParentIdfrom (TreeNode a1 left join TreeNode a1 on a1.ParentId=a2.ParentId) 它的所有子节点不超过两个。 节点A下只有 2个子节点 A1, A2, 然后A1下或许有 A11,A12, 再有 A11下的 A111,A112不超过两层,则 A下可以有 A1,A2,A3..An, 然后A1下有A11,a12,A13,..A1n, 但A11下不会再有子节点了。这是我对中国汉语的理解。问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧) select t.ID from table t connect by prior t.id =t. father_ID group by t.id having count(*)<3Oracle支持,其他的不知道 谢谢楼上的同学,在此非常感谢,至于ACMAIN同学,不想发表太多的疑问,你是一位前辈,我敬重你,但没必要在这里玩文字游戏。有人看懂了我的问题,说明我的表述没有问题。我还想告诉你,不要用强调符号来显示你对中国汉语理解有多好!!!人外有人,天外有天。 mysql主键问题 TIMEDIFF问题。貌似时间相差太久会溢出? 主键的类型对查询性能有影响吗? 关于mysql server版本 postgresql数据库创建函数总报错 我想把数据结构和数据都备份啊 关于mysql 5.1的partition mysql 1414错误,急急~~~~~贴存"猪"过程代码(在线) MySQl的存储过程? mysql的数据导出导入问题!散分! 数据库恢复 JAVA连接mysql的问题
如何查找一个节点,它的所有子节点不超过两个。不超过两个没什么意义,不超两层的话,你可以直接用join来实现
select a1.TreeNodeId,IFNULL(a2.ParentId,a1.a1.ParentId
from (TreeNode a1 left join TreeNode a1 on a1.ParentId=a2.ParentId)
它的所有子节点不超过两个。 节点A下只有 2个子节点 A1, A2, 然后A1下或许有 A11,A12, 再有 A11下的 A111,A112不超过两层,则 A下可以有 A1,A2,A3..An, 然后A1下有A11,a12,A13,..A1n, 但A11下不会再有子节点了。这是我对中国汉语的理解。问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧)
Oracle支持,其他的不知道