SQL頂級父記錄我有一個表結構:在層次
CompanyID,公司名稱,LinkedCompanyID
使多個企業能在一個層次鏈接
例如
CompanyID, CompanyName, LinkedCompanyID
1 Company A, NULL
2 Company B, 1
3 Company C, 2
4 Company D, 2
5 Company E, 4
6 Company F, 3
7 Company G, NULL
我想查詢返回每個公司
即
CompanyID, CompanyName, ToplevelParentID
1 Company A, NULL (or 1 I don't mind)
2 Company B, 1
3 Company C, 1
4 Company D, 1
5 Company E, 1
6 Company F, 1
7 Company G, NULL (or 7 I don't mind)
我在使用recusive CTE表達式採取一臉的頂級父,但所有的例子我可以從父母而不是最上面的父母中找到返回分層列表。
大家能否請提供任何指針或樣本查詢
強烈建議:添加一個字段跟蹤「頂級容器」。我在類似的場景中做了這些(並且一些intent knwdes是他們自己的容器 - 例如CMS:folter被結構化爲文檔,這是一個容器,然後是文檔中的結構,這使得更容易。 – TomTom 2012-02-09 13:13:24