Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment faire une jointure interne avec une requête not in ou not exist in mysql?

Cela appelle le commun LEFT JOIN ... IS NULL motif.

SELECT u.id, u.username, u.email
  FROM user u
  LEFT JOIN biodata b ON u.username = b.username
 WHERE b.id IS NULL

Le LEFT JOIN l'opération préserve toutes les lignes dans user , qu'ils aient ou non des correspondances dans les biodata . (En revanche, un JOIN ordinaire supprimerait les lignes de user qui n'avaient pas de correspondances.) Le b.id IS NULL l'opération filtre les lignes qui font avoir des correspondances.