一sql语句求解 有两张表如下表1是原始表,表2的内容是把上级和下级的全部对应起来,包括自己,比如表1上级2对
一sql语句求解
有两张表如下
表1是原始表,表2的内容是把上级和下级的全部对应起来,包括自己,
比如表1上级2对应的下级有30,20,然后30的下级又有300
在表2中就要写4条记录,分别为30,20,300,2这几个下级。
不知道大伙能听明白否
表1
上级 下级
1 20
2 30
3 10
2 20
30300
表2
上级 下级
120
11
230
220
22
310
33
30300
2300
300300
[解决办法]
select * from test
start with 上级=1 //上级
connect by prior 下级=上级
prior 表示上条纪录
prior 下级=上级 上条纪录的 下级=本条的 上级
具体找start with用法
[解决办法]
楼主希望的应该是 这样的结果吧:
上级 下级
120
11
230
220
22
310
33
30300
2300
3030
[解决办法]
用一条语句实现似乎有困难。
