START WITH 是 Oracle SQL 中 CONNECT BY 查詢的一部分,用於指定樹形結構查詢的起始節點。以下是其詳細用法:
基本語法。START WITH 條件是可選的,用於標識哪個節點作為查找樹形結構的根節點。如果省略 START WITH 子句,則表示所有滿足查詢條件的行作為根節點。
使用場景。
查詢某個節點的所有後代節點。可以使用 START WITH 配合 CONNECT BY 來查詢某個節點的所有後代節點,包括其自身。例如,可以查找組織結構中某個部門及其所有下屬部門。
查詢某個節點的所有祖先節點。通過調整 START WITH 和 CONNECT BY 的方向,也可以查詢到某個節點的所有祖先節點,包括其自身。
示例。假設有一個組織結構表 mdm_organization,其中 org_code 是組織代碼,org_parent_code 是上級組織的代碼。要查詢組織代碼為 10000008 的所有後代節點,可以使用以下查詢: