如何將此代碼從 SQL SERVER 決議到 POSTGRESQL?
SELECT A.GroupNo
, A.AuthorityGroupName
, STUFF((SELECT ', ' C.CodeName
FROM TUserAuthority B
INNER JOIN TDetailCode C
ON B.UserType = C.CodeValue
WHERE B.DeleteYesNo = 'N'
AND B.GroupNo = A.GroupNo
FOR XML PATH('')), 1, 2, '') AS UserTypeArray
, A.UseYesNo
FROM TAuthorityGroup A
WHERE A.DeleteYesNo = 'N';
uj5u.com熱心網友回復:
您的 SQL Server 查詢正在執行舊式組連接。從 Postgres 9 我們可以簡單地使用STRING_AGG:
SELECT a.GroupNo,
a.AuthorityGroupName,
a.UseYesNo,
STRING_AGG(c.CodeName, ', ') AS UserTypeArray
FROM TAuthorityGroup a
LEFT JOIN TUserAuthority b
ON b.GroupNo = a.GroupNo AND
b.DeleteYesNo = 'N'
LEFT JOIN TDetailCode c
ON b.UserType = c.CodeValue
WHERE
a.DeleteYesNo = 'N'
GROUP BY
a.GroupNo,
a.AuthorityGroupName,
a.UseYesNo;
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/498449.html
標籤:PostgreSQL 移民
上一篇:替換JSON檔案中字典串列中的值
