【发布时间】:2021-12-03 08:26:25
【问题描述】:
根据这个问题的标题,我试图在具有特定属性(以最接近的父记录为准)的同一个表中递归地与另一条记录连接记录,但我不完全确定如何处理。
我检查了here 和here,但遗憾的是对于我所需的用例来说不够具体。
示例 SQLFiddle:
http://sqlfiddle.com/#!18/0c5fb/2
我想要达到的最终结果是这样的,其中每一行都知道其最接近的祖先,其中 NeededElement 为真:
| ElementID | ElementName | NeededElement | ParentElementID | ClosestNeededElementID |
|---|---|---|---|---|
| 1 | Root Element | true | (null) | (null) |
| 2 | Child Element A | true | 1 | 1 |
| 3 | Child Element B | false | 1 | 1 |
| 4 | Child Element AA | false | 2 | 2 |
| 5 | Child Element AB | false | 2 | 2 |
| 6 | Child Element BA | false | 3 | 1 |
| 7 | Child Element BB | false | 3 | 1 |
非常感谢!
【问题讨论】:
标签: sql sql-server tsql common-table-expression