結合したい4つの異なるテーブルがあります。テーブルは、次のような列で構成されています。
TableA - aID | nameA | dID
TableB - bID | nameB | cID | aID
TableC - cID | nameC | date
TableD - dID | nameD
テーブルAから始めて、bにはテーブルの主キーがあるため、bを使用してテーブルaとcを結合する方法を理解しました。TableAのTableDも結合できるようにしたい。以下は、最初にテーブルAとBを結合し、次にそれをCに結合するSQLステートメントです。
SELECT TableA.*, TableB.*, TableC.* FROM (TableB INNER JOIN TableA
ON TableB.aID= TableA.aID)
INNER JOIN TableC ON(TableB.cID= Tablec.cID)
WHERE (DATE(TableC.date)=date(now()))
Dを含めるために別の結合を追加しようとすると、「TableD」が不明であるというエラーが表示されます。
SELECT TableA.*, TableB.*, TableC.*, TableD.* FROM (TableB INNER JOIN TableA
ON TableB.aID= TableA.aID)
INNER JOIN TableC ON(TableB.cID= Tablec.cID)
INNER JOIN TableA ta ON(ta.dID= TableD.dID)
WHERE (DATE(TableC.date)=date(now()))