sql >> Database >  >> RDS >> Mysql

SQL:twee tellingen uit verschillende tabellen vergelijken

Begin met het krijgen van de bedragen voor elk afzonderlijk:

# 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

Voeg vervolgens de resultaten samen en selecteer alle rijen waar de som van de bergen voor een land kleiner is dan het aantal meren:

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. Een MySQL-database converteren naar UTF-8-codering

  2. Hoe zet ik global event_scheduler=ON in, zelfs als MySQL opnieuw wordt opgestart?

  3. Werken met niet-ASCII JDBC-gegevens in Talend

  4. Preparedstatement invoegen in database - PSQL