SQL 新手。我有 3 个表:games
、invitations
和users
此查询返回正在进行的游戏:
SELECT games.*
FROM games
INNER JOIN invitations
ON invitations.game_id = games.id
AND invitations.user_id = 1
AND invitations.status = 1
AND games.status = 1;
此查询返回已完成的游戏:
SELECT games.*
FROM games
INNER JOIN invitations
ON invitations.game_id = games.id
AND invitations.user_id = 1
AND invitations.status = 1
AND games.status = 2;
此查询返回用户仍未决定是否加入的游戏:
SELECT games.*
FROM games
INNER JOIN invitations
ON invitations.game_id = games.id
AND invitations.user_id = 1
AND invitations.status = 0;
我想知道,如果我有一个需要这 3 个查询结果的 Web 应用程序,我是否必须执行 3 个 sql 语句,或者有没有办法将它们压缩成 1 个?提出 3 个请求对我来说似乎太多了,这是正常的处理方式吗?