チームIDとチーム名を含むチームテーブルと、クイズのデータを含む2つのテーブルと、アンケートのデータを含む別のテーブル。
クイズ(クイズデータがある)とアンケート(アンケートデータがある)の両方を完了したチームIDのリストを取得する必要がありますが、3つのテーブルを結合してIDのリストを取得する方法がわかりません。私は欲しい。
非常に多くのポインタを受け取りました
チームIDとチーム名を含むチームテーブルと、クイズのデータを含む2つのテーブルと、アンケートのデータを含む別のテーブル。
クイズ(クイズデータがある)とアンケート(アンケートデータがある)の両方を完了したチームIDのリストを取得する必要がありますが、3つのテーブルを結合してIDのリストを取得する方法がわかりません。私は欲しい。
非常に多くのポインタを受け取りました
あなたが上のコメントで言ったように..
実際には、いずれかのデータテーブルにあるチームIDが必要です。それはどのようにクエリを修正しますか?–デイブ
これを試してみてください、これは私があなたの言葉で理解したことです。
select teamID,teamName from team where teamID in (select teamID from quiz) or teamID in (select teamID from questionnaire);
クイズとアンケートのテーブル内にチームテーブルの参照があると仮定すると、この方法で参加する必要があります-
SELECT team.id, team.name
from
team, quiz, questionnaire
where
team.id=quiz.team_id
AND team.id=questionnaire.team_id
team.id=quiz.team_id AND team.id=questionnaire.team_id
クイズとアンケートの両方の表にあるチームIDのみを実行すると、結果に表示されます。
テーブルクイズまたはアンケートのいずれかに存在するチームIDが必要な場合は、次のように置き換えAND
ますOR
-
SELECT team.id, team.name
from
team, quiz, questionnaire
where
team.id=quiz.team_id
OR team.id=questionnaire.team_id