Mysql
 sql >> Baza danych >  >> RDS >> Mysql

SQL:porównywanie dwóch liczb z różnych tabel

Zacznij od uzyskania sum dla każdego z osobna:

# Sum of lakes
SELECT code, count(*) AS sum FROM lakes GROUP BY code

# Sum of mountains
SELECT code, count(*) AS sum FROM mountains GROUP BY code

Następnie połącz wyniki razem i zaznacz wszystkie wiersze, w których suma gór dla kraju jest mniejsza niż liczba jezior:

SELECT l.code AS code, l.sum AS lake_count, m.sum AS mountain_count
FROM
(SELECT code, count(*) AS sum FROM lakes GROUP BY code) AS l JOIN
(SELECT code, count(*) AS sum FROM mountains GROUP BY code) AS m
ON l.code = m.code
WHERE m.sum < l.sum



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zoptymalizować wyszukiwanie pełnotekstowe MySQL Boolean? (Lub czym go zastąpić?) - C#

  2. PHP/PDO:Przygotowane instrukcje nie działają podczas tworzenia tabeli?

  3. Czy MySQL FIND_IN_SET lub odpowiednik może używać indeksów?

  4. Dodaj kolumnę do wszystkich zapytań MySQL Select w jednym ujęciu

  5. Sumuj wartości tablicy wielowymiarowej według klucza bez pętli