• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数テーブルから値を連結出力するSQLについて)

複数テーブルから値を連結出力するSQLについて

このQ&Aのポイント
  • 複数テーブルを連結して結果を取得するためのSQL文の作成方法について説明します。
  • 例を挙げながら、科目テーブル、生徒テーブル、科目選択テーブルを連結する方法を解説します。
  • 出力条件や使用するDBについても説明します。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

left joinするだけですね //準備 create table T1(科目ID int not null primary key, 科目名 varchar(20)); insert into T1 values(1,'国語'),(2,'算数'),(3,'理科'),(4,'社会'),(5,'英語'); create table T2(生徒ID int not null primary key, 生徒名 varchar(20)); insert into T2 values(1,'山田太郎'),(2,'鈴木花子'); create table T3(科目ID int , 生徒ID int,unique key(科目ID,生徒ID)); insert into T3 values(1,1),(2,1),(5,1),(5,2); //例1)生徒ID=1の場合 select T1.科目ID, 科目名, T3.生徒ID, 生徒名 from T1 left join T3 on T1.科目ID=T3.科目ID AND T3.生徒ID=1 left join T2 on T2.生徒ID=T3.生徒ID //例2)生徒ID=2の場合 select T1.科目ID, 科目名, T3.生徒ID, 生徒名 from T1 left join T3 on T1.科目ID=T3.科目ID AND T3.生徒ID=2 left join T2 on T2.生徒ID=T3.生徒ID

jone
質問者

お礼

yambejp様 ご教授頂き有難うございます。 また、お返事遅くなり申し訳ございませんでした。 (準備までお教え頂き大変恐縮です。。) お蔭様で、試してみたところ期待する結果が得られました。 勉強不足で、煮詰まってしまうと「頼みの綱」的にこちらを利用させて頂いてております。 本当に心強く「親切な方が沢山いらっしゃるんだなぁ」と感謝感激です!! また、質問投稿させて頂く事があるかと思いますが、宜しくお願いします!!! 本当に有難うございました。

関連するQ&A