sql >> Database teknologi >  >> RDS >> Mysql

Hvordan kombinerer jeg resultaterne af to forespørgsler med bestilling?

Du kan bruge UNION ALL for at hente rækker fra begge tabeller:

SELECT id, article, author, tag, date FROM table1 WHERE tag = '1'
UNION ALL
SELECT id, article, author, tag, date FROM table2 WHERE tag = '3'
ORDER BY date

Du kan også overveje at omstrukturere din database, så du i stedet for at bruge to tabeller kun bruger en enkelt tabel med et felt til at skelne typen af ​​hver række. Så kan forespørgslen forenkles til:

SELECT id, article, author, tag, date
FROM yourtable
WHERE (tag, type) IN (('1','type1'), ('3','type2'))
ORDER BY date


  1. Sammenligning af almindelige databaseinfrastrukturmønstre

  2. Dublet kolonne ved joinforbindelse

  3. Sådan fungerer Abs() i PostgreSQL

  4. Bruger du Mysql på kommandolinjen i osx - kommandoen blev ikke fundet?