sql >> Database >  >> RDS >> Mysql

Mysql JOIN (meerdere) tabellen

Probeer unie:

SELECT table1.name, temperature, pressure 
FROM table1 inner join table2 ON
table1.name = table2.name
UNION
SELECT table1.name, temperature, pressure 
FROM table1 inner join table3 ON
table1.name = table3.name

Bewerken:je kunt nog een selectie maken uit die resultaten, dan kun je beperken, groeperen of bestellen:

SELECT * FROM
(
    SELECT table1.name, temperature, pressure 
    FROM table1 inner join table2 ON
    table1.name = table2.name
    UNION
    SELECT table1.name, temperature, pressure 
    FROM table1 inner join table3 ON
    table1.name = table3.name
) as JoinedTable
LIMIT 0, 1

Bewerken 2:Als u slechts één rij van elke tabel wilt hebben (tabel 2 en tabel 3), kunt u voor elke zoekopdracht limit/group by/order by gebruiken (ervan uitgaande dat u een kolomdatum hebt):

SELECT table1.name, temperature, pressure 
FROM table1 inner join table2 ON
table1.name = table2.name
ORDER BY date DESC
LIMIT 0, 1
UNION
SELECT table1.name, temperature, pressure 
FROM table1 inner join table3 ON
table1.name = table3.name
ORDER BY date DESC
LIMIT 0, 1


  1. het converteren van MySQL-query naar Codeigniter-syntaxis

  2. Verschil tussen NullIf() en IfNull() in SQLite

  3. Null-waarden uit de databasekolom vergelijken

  4. C# + MySQL-verklaring voorbereid met problemen met DUPLICATE KEY UPDATE