如何使用ID连接多个SQL表?我有4个不同的表,我想加入。这些表的结构如下:TableA - aID | nameA | dID
TableB - bID | nameB | cID | aID
TableC - cID | nameC | date
TableD - dID | nameD从表A开始,我理解如何使用b来连接表a和c,因为b具有这些表的主键。我希望能够在TableA上加入表TableD。下面是我的SQL语句,它首先连接表A和B,然后将它连接到C:SELECT TableA.*, TableB.*, TableC.* FROM (TableB INNER JOIN TableAON 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()))
3 回答
慕盖茨4494581
TA贡献1850条经验 获得超11个赞
SELECT a.nameA, /* TableA.nameA */ d.nameD /* TableD.nameD */FROM TableA a INNER JOIN TableB b on b.aID = a.aID INNER JOIN TableC c on c.cID = b.cID INNER JOIN TableD d on d.dID = a.dID WHERE DATE(c.`date`) = CURDATE()
添加回答
举报
0/150
提交
取消