如何在json中获得一个由sql中的两个字段组合而成的列



我在mssql:中有一个包含这些列的表

id, name, surname, age

当我从sql:中获得json时,如何将namesurname组合成info

select id, name, surname, age from table for json auto

我得到的是:

[{ id, name, surname, age }]

我需要的是:

[{ id, info: { name, surname }, age }]

这可能和mssql有关吗?如果是这样,我如何在sql中实现它?

您需要使用FOR JSON PATH来构建嵌套的ouptut:

SELECT 
id, 
name AS 'info.name', 
surname AS 'info.surname', 
age 
FROM (VALUES
(1, 'Name', 'Surname', 35)  
) t (id, name, surname, age)
FOR JSON PATH

结果:

[{"id":1,"info":{"name":"Name","surname":"Surname"},"age":35}]

相关内容

  • 没有找到相关文章