我有一个表(dim_factory_relation),它以以下格式存储每个子工厂的子工厂id和父工厂id。
FK_CHILD_FACTORY_ID FK_PARENT_FACTORY_ID
65 5
66 5
5 13
10 13
13 25
13 40
30 40
40 100
71 56
72 56
56 100
现在,如果我通过了较低的儿童工厂,它应该提供父母的名单,直到最高水平。例如:作为一家儿童工厂,我已经65岁了。它必须给我
FK_PARENT_FACTORY_ID
5
13
25
40
100
请帮助使用Oracle SQL实现此功能。谢谢你的帮助。
发布于 2016-09-07 07:48:01
select FK_PARENT_FACTORY_ID
from t
start with FK_CHILD_FACTORY_ID = 65
connect by prior FK_PARENT_FACTORY_ID=FK_CHILD_FACTORY_ID
输出
FK_PARENT_FACTORY_ID
---------------------------------------
5
13
25
40
100
https://stackoverflow.com/questions/39363939
复制相似问题