• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:3テーブルを使い検索結果を表示する)

3テーブルを使って検索結果を表示する方法

このQ&Aのポイント
  • PHPを使用して3つのテーブルを結合し、検索結果を表示したいですがうまくいきません。
  • テーブルAにはcdと3つのキーがあり、テーブルBにはscdとsnameがあります。
  • snameを抽出するためにはテーブルAのcdをテーブルBのscdとマッチさせる必要がありますが、うまくいきません。

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

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

うーん。ホントにこの構成でデータを管理するつもりなら あとで死ぬほど苦労すると思いますよー。 正規化する方法を真剣に学習なさったほうがよろしいかと。 とりあえずご指定の命題には以下で対応できます。 (対応できるからといって使い勝手がよいというものではありませんので ご注意ください) select cd,sname,C1.kcdname,C2.kcdname,C3.kcdname FROM テーブルA AS A inner join テーブルB as B on B.scd like CONCAT(A.cd,'%') left join テーブルC AS C1 on A.keycd1=C1.kcd left join テーブルC AS C2 on A.keycd2=C2.kcd left join テーブルC AS C3 on A.keycd3=C3.kcd

morizoukun
質問者

お礼

ご回答ありがとうございます。 やはりご指摘のとおりあとあとで苦労しますよね もう一度テーブル構成を考え直します でも、このような方法があるのはとても勉強になりました ありがとうございました。

関連するQ&A