up
但是不明白为什么要sql,路由算法完全是底层的事情,都是用C之类写啊

解决方案 »

  1.   

    to ern
    呵呵,谢谢你的UP其实我这里说的路由算法并非是网络通信中的路由算法,只是算法类似而已,我现在的路径信息都存放在数据库里啊
      

  2.   

    glsensor(超能胶)∶ 写出来看看呀(不是不相信你,实在是想学学)
      

  3.   

    写了一个,效率可能比较低:),而且好像只有9i以上才支持:create table pathtbl(
      b_node varchar2(1),
      e_node varchar2(1)
    );... import data ...;select ltrim(path, ',') from (
    select
      sys_connect_by_path(b_node||'->'||e_node,',') path
    from pathtbl
    start with b_node='A'
    connect by b_node=prior e_node
    )
    where path like '%'||'F'
    ;结果好像还是不太像 :(
    LTRIM(PATH,',')
    ------------------------
    A->I,I->J,J->F
    A->B,B->C,C->D,D->E,E->F
    A->G,G->H,H->F
      

  4.   

    这样写就行了,哈哈:)select 'A'||path from (
    select
      sys_connect_by_path(e_node,'-->') path
    from pathtbl
    start with b_node='A'
    connect by b_node=prior e_node
    )
    where path like '%'||'F'
    ;
      

  5.   

    忘了附结果了:)
    'A'||PATH
    --------------------
    A-->I-->J-->F
    A-->B-->C-->D-->E-->F
    A-->G-->H-->F
      

  6.   

    8i支持start with 吗?
    用最基本的SQL可以实现吗?