Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql JOIN (множество) таблици

Опитайте обединение:

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

Редактиране:Можете да направите друг избор от тези резултати, след което можете да ограничите, групирате или подредите:

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

Редактиране 2:За да имате само един ред от всяка таблица (таблица 2 и таблица 3), можете да използвате ограничение/групиране по/подреждане по за всяка заявка (ако приемем, че имате дата на колона):

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. архивиране на файлове в google диск с помощта на PHP

  2. SQL Където ВСЯКАКВА колона е равна на стойност

  3. Диалектът MyISAM генерира грешен DDL

  4. Еквивалент на клауза GroupBy и Having в релационна алгебра

  5. Как да сравнявам дати, използвайки между клауза в хибернация