sql >> Database >  >> RDS >> Mysql

Hoe kan ik meerdere SQL-tabellen samenvoegen met behulp van de ID's?

Je wilt meer zoals dit:

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()) 

In uw voorbeeld neemt u eigenlijk niet TableD . mee . Het enige wat je hoeft te doen is nog een join uit te voeren, net zoals je eerder hebt gedaan.

Een opmerking:u zult merken dat ik veel van uw haakjes heb verwijderd, omdat ze in de meeste gevallen die u had, echt niet nodig zijn en alleen verwarring veroorzaken wanneer u de code probeert te lezen. Een goede nesting is de beste manier om uw code leesbaar en gescheiden te maken.



  1. Hoe een bestaande Postgres-tabel zo transparant mogelijk naar een gepartitioneerde tabel migreren?

  2. IS NULL of IS NOT NULL gebruiken op join-voorwaarden - Theorievraag

  3. Walkthrough:SQL Server High Availability instellen

  4. T-SQL-subquery Max (datum) en joins