sql >> Databáze >  >> RDS >> Mysql

Mysql - Získejte řádek s nejnižším počtem vztahů

K zahrnutí učitelů s nulovými studenty potřebujete pouze vnější spojení.

select t.id, t.name
from teacher t
left join student s on t.id = s.teacher_id
group by t.id
order by count(s.name)
limit 1

Můžete použít denormalizaci (sloupec s předem vypočítaným počtem studentů na učitele), ale je to špatný zvyk a nedoporučoval bych to, pokud to není opravdu nevyhnutelné.



  1. Aktualizujte více hodnot sloupců tabulky pomocí jednoho dotazu

  2. Hibernate:constraintName je v MySQL null

  3. Práce s jazykem SQL (Structured Query Language) pomocí Microsoft Access 2010, 2013, 2016 a 2019

  4. VĚK [1, 2, 3] vs. VĚK MEZI 1 A 3