start with..connect by prior:树状查询(递归)
执行select * from t_bmb_xiaoq start with suos=1347 connect by prior suos=bh;
结果:
执行流程:先从suos(列)=1347开始查询,所以第一行显示suos(列)=1347的那一行的值,接着后面的那句 connect by prior suos=bh,把suos与bh匹配,所以下一行查询bh=1347那行值,第二行中又有suos,且值为1339,依次类推suos又与bh匹配。当执行完一个流程后(即一次树根到树叶的流程),查询会返回到树枝的节点,查询出这根树枝上的第二个树叶,再返回再查询,直到这根树枝的树叶被查询完,然后查询下一根树枝,直到树叶被查询完,当所有树枝被查询完时(当然树叶也被查询完了),数据显示就会形成一个树状 结构。
完成这个过程的关键是表中的每行有父节点和子节点,本行的父节点是上一行的子节点,这行的子节点是下行的父节点。
start with :以那行,及其值为开始,(作为根节点)
prior:指定是从根节点开始还是从子叶节点开始