sql:多层次连接中不同行的字符串值的聚合

rqdpfwrv  于 2021-08-01  发布在  Java
关注(0)|答案(0)|浏览(171)

我在SQLServer中有一个多级表层次结构,当连接它们时,我希望对其中一个表的行中的字符串进行聚合。在下面屏幕截图中的(简化)示例中,我有level1->level2->level3,还有一个表performinguser“挂在”level1下面。我对这四个表进行了一次连接,得到了8行。到目前为止一切正常。
现在,我想要的是,这8行中的每一行都得到一个新列(“allusersforlevel1”),其中包含其level1的所有performingusers的聚合(其目的是让performinguser还可以看到其他performinguser具有相同的级别1。)
因此,对于前两行,我需要一个新列,其中包含“aretha,mary”。在其他6行中,该列应该有“john,jim”。
我尝试过string_agg(如图中的注解所示),但它需要一个分组(我不想要;我要全部8排)。我还尝试在over(按level1id分区)上执行string\u agg,但得到“函数‘string\u agg’不是有效的窗口函数,不能与over子句一起使用。”
有人对怎么做有什么建议吗?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题