我想将 t-sql 中的 json 行合并为单个 json 行
I want to combine json rows in t-sql into single json row
我有一个table
id
json
1
{"url":"url2"}
2
{"url":"url2"}
我想将这些组合成一个语句,输出为:
{
"graphs": [
{
"id": "1",
"json": [
{
"url": "url1"
}
]
},
{
"id": "2",
"json": [
{
"url": "url2"
}
]
}
]
}
我正在使用 T-SQL,我注意到在 postgres 中有一些东西,但在 tsql 上找不到太多。
任何帮助将不胜感激..
您需要在 json
列上使用 JSON_QUERY
以确保它不会被转义。
SELECT
id,
JSON_QUERY('[' + json + ']')
FROM YourTable t
FOR JSON PATH, ROOT('graphs');
我有一个table
id | json |
---|---|
1 | {"url":"url2"} |
2 | {"url":"url2"} |
我想将这些组合成一个语句,输出为:
{
"graphs": [
{
"id": "1",
"json": [
{
"url": "url1"
}
]
},
{
"id": "2",
"json": [
{
"url": "url2"
}
]
}
]
}
我正在使用 T-SQL,我注意到在 postgres 中有一些东西,但在 tsql 上找不到太多。
任何帮助将不胜感激..
您需要在 json
列上使用 JSON_QUERY
以确保它不会被转义。
SELECT
id,
JSON_QUERY('[' + json + ']')
FROM YourTable t
FOR JSON PATH, ROOT('graphs');