我有一张公司单位表:
Id Name Parent
1 Head null
2 IT dep 1
3 Backoffice 1
4 Devs 2
和用户
Id Name UnitId
1 One 1
2 Two etc
每个用户(在其他表格中)都有一些相关的数字,我们称之为评级。
我想创建一个可以生成以下报告的查询,其中avg rating
是直接在此单元和子单元中的所有用户的平均评分,加上用户自己的评分。
Unit Avg Rating
Head 25%
IT Dep 30%
Devs 40%
Dev1 50%
Dev2 30%
SomeoneElse 20%
Backoffice 35%
SomeoneInBO 45%
AlsoInBO 25%
我想要使用的方法是在嵌套行中选择相同的值,而不是将此数据发送到pivot(它将处理显示此数据)。所以我需要像这样的结果
Unit Unit1 Unit2 Who Avg Rating
Head null null null 25%
Head IT Dep null null 30%
Head IT Dep Devs null 40%
Head IT Dep Devs Dev1 50%
Head IT Dep Devs Dev2 30%
etc...
我想我已经想出如何做到这一点,如果层次结构的级别已经知道,但是如何在一般情况下实现这个目标呢?