Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como posso juntar várias tabelas SQL usando os IDs?


Você quer algo mais assim:
SELECT TableA.*, TableB.*, TableC.*, TableD.*
FROM TableA
    JOIN TableB
        ON TableB.aID = TableA.aID
    JOIN TableC
        ON TableC.cID = TableB.cID
    JOIN TableD
        ON TableD.dID = TableA.dID
WHERE DATE(TableC.date)=date(now()) 

No seu exemplo, você não está realmente incluindo TableD . Tudo o que você precisa fazer é executar outra junção, exatamente como fez antes.

Uma nota:você notará que eu removi muitos de seus parênteses, pois eles realmente não são necessários na maioria dos casos em que você os tinha, e apenas adicionam confusão ao tentar ler o código. O aninhamento adequado é a melhor maneira de tornar seu código legível e separado.