如何(递归地)根据可用的层次结构更新表?

时间:2018-02-26 21:47:10

标签: sql sql-server sql-server-2008 tsql

鉴于这3个列值,我如何更新每个员工的顶级头表?

| EmpID | EmpName | SupervisorID | DeptHeadID |
|:-----:|:-------:|:------------:|:----------:|
| 3     | Adam    |     null     |            |
| 1     | Sam     |     5        |            |
| 6     | Mike    |     2        |            |
| 5     | Jack    |     3        |            |
| 2     | Steph   |     5        |            |
| 8     | Rob     |     2        |            |

结果应该是这样的

| EmpID | EmpName | SupervisorID | DeptHeadID |
|:-----:|:-------:|:------------:|:----------:|
| 3     | Adam    |     null     |     null   |
| 1     | Sam     |     5        |     3      |
| 6     | Mike    |     2        |     3      |
| 5     | Jack    |     3        |     3      |
| 2     | Steph   |     3        |     3      |
| 8     | Rob     |     2        |     3      |

0 个答案:

没有答案