sql >> Database teknologi >  >> RDS >> Mysql

MySQL Deltag, hvor det ikke findes

Jeg ville sandsynligvis bruge en LEFT JOIN , som vil returnere rækker, selvom der ikke er noget match, og så kan du kun vælge rækker uden match ved at markere for NULL s.

Altså noget som:

SELECT V.*
FROM voter V LEFT JOIN elimination E ON V.id = E.voter_id
WHERE E.voter_id IS NULL

Om det er mere eller mindre effektivt end at bruge en underforespørgsel afhænger af optimering, indekser, om det er muligt at have mere end én eliminering pr. vælger osv.



  1. WordPress MediaWiki integration

  2. Valg af tilfældige rækker med MySQL

  3. Konverter månedsnummer til månedsnavn i PostgreSQL

  4. ORDER BY datetime gør forespørgslen meget langsom