MudGuard: MySQL Abfrage gesucht

Beitrag lesen

Hi,

Tach!

Mit welcher MySQL Abfrage finde ich heraus, welche Betreuer aus Tabelle 1 keine Kinder aus Tabelle 2 betreuen?

Mit Subquery und NOT EXISTS(...).

SELECT spalten FROM betreuer WHERE NOT EXISTS(SELECT * FROM kinder WHERE betreuer = betreuer.id)

ist das günstiger als

SELECT spalten FROM betreuer WHERE id NOT IN (SELECT distinct betreuer FROM kinder)

Was günstiger ist, ist ggf. aber auch von der Anzahl der Zeilen in den Tabellen abhängig.
Daß auf betreuer in der kinder-Tabelle ein Index liegt, setze ich voraus.

cu,
Andreas

--
Warum nennt sich Andreas hier MudGuard?
O o ostern ...
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.