Saya memiliki 4 tabel berbeda yang ingin saya ikuti. Tabel disusun dengan kolom sebagai berikut:
TableA - aID | nameA | dID
TableB - bID | nameB | cID | aID
TableC - cID | nameC | date
TableD - dID | nameD
Dimulai dengan Tabel A, saya mengerti bagaimana GABUNG tabel a dan c menggunakan b, karena b memiliki Kunci Utama untuk tabel tersebut. Saya ingin dapat bergabung dengan table TableD di TableA juga. Di bawah ini adalah pernyataan SQL saya yang pertama kali bergabung dengan tabel A dan B, kemudian menggabungkannya ke C:
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()))
Ketika saya mencoba untuk menambahkan gabungan lain, untuk memasukkan D, saya mendapatkan kesalahan bahwa 'TableD' tidak dikenal:
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()))
JOINTableC
iniON
TableC.cID = TableB.cID
dan tidakTableC.cID = TableA.cID
. Saya berasumsi kita akan bergabungTableA
dengan 3 tabel lainnya.sumber
Anda belum bergabung dengan TableD, hanya memilih TableD FIELD (
dID
) dari salah satu tabel.sumber
sumber