这是我的数据库设计,具有多对多关系
table Tournament
TournamentId int
name varchar(45)
table User
UserId int
name varchar(45)
table Tournament_Users
Tournament_Id int
User_Id int
我试图以JSON格式返回所有比赛的锦标赛用户列表。我不确定在查询中是否可以这样做,或者这是一个javascript工作?我试图遵循这个Returning child rows formatted as JSON in SQL Server queries,但我在示例中淹死了。
这是我当前的查询
SELECT t.TournamentId, t.Name as tourName, u.UserId, u.Name as userName
FROM Tournament_Users tu
LEFT JOIN Tournaments t ON tu.Tournament_Id = t.TournamentId
LEFT JOIN Users u ON u.UserId = tu.User_Id
因此,作为json结果,这看起来像这样:
对于客户来说,这似乎很难。如何将其转换为这样的格式?
SQLFIDDLE:http://sqlfiddle.com/#!9/9bc2ebf/3
答案 0 :(得分:1)
尝试类似:
AFunctionName:
handler: src/index.handler
description: desc
environment: ${file(environment.yml)}
events:
- http:
method: any
path: /api/{proxy+}
authorizer:
arn: arn:aws:cognito-idp:eu-west-1:123456:userpool/eu-west-1_123456
请参阅db-fiddle。
答案 1 :(得分:0)
如果您使用的是mysql 8.0,那么
SELECT json_object(
'TournamentId', t.TournamentId ,'tourName', t.Name ,'UserId' ,u.UserId, 'UserName' ,u.Name)
FROM Tournament_Users tu
LEFT JOIN Tournaments t ON tu.Tournament_Id = t.TournamentId
LEFT JOIN Users u ON u.UserId = tu.User_Id
您可以参考 - https://dev.mysql.com/doc/refman/8.0/en/json-creation-functions.html