我有一个带有 COALESCE
运算符将一行中的所有行与分隔符连接起来( ;
). 以下是构建查询的代码:
DECLARE @db NVARCHAR(max)
SELECT @db = COALESCE(@db+';','') + OID FROM COD_TBL
SELECT OID = @db
INNER JOIN EMP_TBL ON EMP_TBL.ID=COD_TBL.ID
不幸的是,我要把这个还给你。
msg 156,级别15,状态1,第4行关键字“join”附近的语法不正确。
表1:环境管理计划
ID NAME
1 RICHARD
2 RAYMOND
表2:化学需氧量tbl
ID COD
1 AA
2 BB
1 CC
2 DD
1 EE
2 FF
期望输出:
ID NAME OID
1 RICHARD AA;CC;EE
2 RAYMOND BB;DD;FF
请帮我解决这个问题。
1条答案
按热度按时间pkln4tw61#
一个选项是使用字符串聚合函数
string_agg()
-启动sql server 2017可用: