SQL 初心者。games
、invitations
、およびの3 つのテーブルがあります。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つのリクエストを行うのは私には多すぎるように思えます.これはこれに対処する通常の方法ですか?