JSON 来自 SQL 具有子级别的查询
JSON from SQL query with child level
我的数据库中有一个简单的查询:
SELECT id, name FROM users FOR JSON AUTO, ROOT('users')
这个 return 是以下 JSON:
{
"users": [
{"id": "1", "name": "John"}
{"id": "2", "name": "Mike"}
]
}
我想要 return 格式如下:
{
"users": {
"list": [
{"id": "1", "name": "John"}
{"id": "2", "name": "Mike"}
]
}
}
我可以通过简单地更改查询在 SQL 级别上执行此操作吗?
你可以试试这个:
Table:
CREATE TABLE users (
id varchar(1),
[name] varchar(50)
)
INSERT INTO users
(id, [name])
VALUES
('1', 'John'),
('2', 'Mike')
声明:
SELECT users = (SELECT id, name FROM users FOR JSON AUTO, ROOT('list'))
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
结果:
{"users":{"list":[{"id":"1","name":"John"},{"id":"2","name":"Mike"}]}}
我的数据库中有一个简单的查询:
SELECT id, name FROM users FOR JSON AUTO, ROOT('users')
这个 return 是以下 JSON:
{
"users": [
{"id": "1", "name": "John"}
{"id": "2", "name": "Mike"}
]
}
我想要 return 格式如下:
{
"users": {
"list": [
{"id": "1", "name": "John"}
{"id": "2", "name": "Mike"}
]
}
}
我可以通过简单地更改查询在 SQL 级别上执行此操作吗?
你可以试试这个:
Table:
CREATE TABLE users (
id varchar(1),
[name] varchar(50)
)
INSERT INTO users
(id, [name])
VALUES
('1', 'John'),
('2', 'Mike')
声明:
SELECT users = (SELECT id, name FROM users FOR JSON AUTO, ROOT('list'))
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
结果:
{"users":{"list":[{"id":"1","name":"John"},{"id":"2","name":"Mike"}]}}