望不到光的黑
2014-07-02 14:45
浏览 548
已采纳

oracle 查询树形结构二级节点的办法

如题:
我有一张树形结构的表,里面存了一级二级和三级。通过每条记录的parentCode区分,我现在想得到二级节点的code并已二级节点来分组统计数据,怎么写sql呢?谢谢

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • gerrard_ok 2014-07-02 16:29
    已采纳

    select t1.* from A t1 left join B t2 on t1.parentCode = t2.code
    and t2.parentCode = 0

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • canon99 2014-07-03 12:14

    select * from a start with parentCode = 0 connect by prior id = parentCode;

    评论
    解决 无用
    打赏 举报
  • dison_ 2014-07-04 09:28

    你既然想要获取二级节点,从你说的来看,parentCode 应该是父类的编码。

    既然是这样,那么一级节点,应该就没有父类编码的!从这点入手。

    [code="java"]select * from tableName t where t.parentCode is null;[/code]

    获取到一级节点。
    然后连表就可以了!
    其实最简单的,还是[b] canon99 [/b] 他给的答案
    [code="java"] select * from a start with parentCode = 0 connect by prior id = parentCode;[/code]

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题