SQL Server SSMS- SQL使用同一组的多列嵌套数组创建JSON字符串

px9o7tmv  于 2023-01-12  发布在  其他
关注(0)|答案(1)|浏览(93)

在下表中,我尝试创建一行JsonString,其中包含一组数组。我无法找到获得预期结果的方法。

Select GroupID, Name, RecordNumber 
from Table
Group by GroupID, Name, RecordNumber
FOR JSON PATH
nbnkbykc

nbnkbykc1#

由于您不能拥有动态根,因此必须手动创建:

SELECT GroupID
        -- adding dynamic root to JSON string
      , '{"' + CAST(GroupID AS VARCHAR(100)) + '":' + 
      (
          SELECT Name, RecordNumber
          FROM yourtable g2
          WHERE g2.GroupID = g.GroupID
          FOR JSON AUTO
      ) 
      + '}' AS JsonString
FROM yourtable g
GROUP BY GroupID

相关问题