sql >> Databasteknik >  >> RDS >> Mysql

SQL:Jämför två räkningar från olika tabeller

Börja med att få summorna för varje individuellt:

# 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

Slå sedan ihop resultaten och välj alla rader där summan av bergen för ett land är mindre än antalet sjöar:

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. Hur man använder Coalesce i MySQL

  2. Anpassa Spotlight Cloud Alarms

  3. Hur kan jag generera en unik sträng per post i en tabell i Postgres?

  4. Hur hjälper pgBouncer till att påskynda Django