• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:参照先に値が無い場合空欄にするテーブル結合を作る)

参照先に値が無い場合空欄にするテーブル結合

このQ&Aのポイント
  • 参照先に値が無い場合、空欄としてテーブルを結合する方法を教えてください。
  • テーブルAとテーブルBを結合し、参照先に値が無い場合は空欄となるようにしたいです。
  • テーブルAとテーブルBを結合して、参照先に値がない場合は空欄になる方法を教えてください。

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

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

B.status_id→B.sidなら SELECT SUB.id,SUB.sid,B.name FROM (SELECT DISTINCT A.id,B.sid FROM A,B) AS SUB LEFT JOIN A ON SUB.id=A.id AND SUB.sid=A.status_id LEFT JOIN B ON A.status_id=B.sid みたいなのでどうでしょう?

その他の回答 (2)

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

ざっくりA×Bの掛け合わせをしたうえで、Aの所在を確認していけばよいのでは? SELECT SUB.id,SUB.status_id,B.name FROM (SELECT DISTINCT A.id,B.status_id FROM A,B) AS SUB LEFT JOIN A ON SUB.id=A.id AND SUB.status_id=A.status_id LEFT JOIN B ON A.status_id=B.status_id

marariya
質問者

お礼

すいません、今確認してみたらBのstatus_id の部分は sid って名称でした…… それに応じてB.status_idになっていた部分を B.sidに差し替えてみたのですが ERROR 1054 (42S22): Unknown column 'SUB.status_id' in 'field list' のエラーが出てきてしまいます…… 抜けもれで申し訳ありません

  • hwoa1024
  • ベストアンサー率36% (122/336)
回答No.1

これで大丈夫だと思います select A.id , B.status_id , B.name from A left join B on A.status_id = B.status_id

関連するQ&A