• ベストアンサー

mysqlでのsql文

下記のようにテーブルが有り、外部キーの設定も済んでいますが、 PHPファイル内で「select * form song WHERE song_name LIKE '%%'」と実行すると 「0,眠り姫,0」と表示されます。 このsql文を実行した上の結果の一番右側を「0」でなく「栗林みな実」と出力したいのですが、 なにぶん最後にsqlを扱ったのが5年以上前で、 全部頭から抜けてしまっていますorz 外部キーは「song」テーブルのkashu_IDと「kashu」テーブルのkashu_IDに設定してあります。 mysqlのバージョンは5.1.69

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

  • ベストアンサー
回答No.2

外部キーが指定してあっても、 実際、SQLで取得する際には、2つのテーブルを結合する必要がありますので、 SELECT `song`.`song_ID`, `song`.`song_name`, `kashu`.`kashu` FROM `song` JOIN `kashu` ON `song`.`kashu_id` = `kashu`.`kashu_id` WHERE `song`.`song_name` LIKE '%%' こちらのような、SQLになるかと思います。

IrohaKujoh
質問者

お礼

ありがとうございました。

その他の回答 (1)

  • t_ohta
  • ベストアンサー率38% (5292/13826)
回答No.1

select * form song, kashu WHERE song.kashu_ID = kashu.kashu_ID and song.song_name LIKE '%%'

関連するQ&A