使用“获取所有家长和孩子”;通过“连接”;查询sql中的特定输入

使用“获取所有家长和孩子”;通过“连接”;查询sql中的特定输入,sql,oracle,recursive-query,Sql,Oracle,Recursive Query,我有一个表com_customer_mst,它包含customer_id和它们的父customer_id,我需要获取特定customer_id的所有父项和子项作为输入。一个客户id将有一个单亲,但可能有多个子女 customer_id PARENT_CUSTOMER_ID 61 12 18 12 111 12 250 12 14 15 我已运行此查询: SELE

我有一个表com_customer_mst,它包含customer_id和它们的父customer_id,我需要获取特定customer_id的所有父项和子项作为输入。一个客户id将有一个单亲,但可能有多个子女

customer_id     PARENT_CUSTOMER_ID
61              12
18              12
111             12
250             12
14              15
我已运行此查询:

SELECT CUSTOMER_ID, customer_code, PARENT_CUSTOMER_ID FROM SBSA_AXIA.COM_CUSTOMER_MST
start with customer_id = 154
  connect by prior CUSTOMER_ID = PARENT_CUSTOMER_ID;
但这只是给所有的孩子

customer_id     PARENT_CUSTOMER_ID
61              12
18              12
111             12
250             12
14              15

start with..connect by
以递归方式获取-听起来不像你要找的。您可以组合两个选项:1。获取父对象和2。把所有的孩子都带走。然后
union
结果。如何获得父母?上面的查询用于获取子对象。一个客户id将只有一个家长。
从SBSA_AXIA.COM_CUSTOMER_MST中选择客户id、家长客户id,其中客户id=154
所有家长,包括家长的家长,而不是单亲家长。需要使用它一点(除非您准备好,否则我无法使用),但它应该具有相同的逻辑。尝试从SBSA_AXIA.COM_CUSTOMER_MST中选择CUSTOMER_ID、CUSTOMER_code、PARENT_CUSTOMER_ID,从CUSTOMER_ID=154开始,通过先前的PARENT_CUSTOMER_ID=CUSTOMER_ID连接