Isso chama para o comum
LEFT JOIN ... IS NULL
padronizar. SELECT u.id, u.username, u.email
FROM user u
LEFT JOIN biodata b ON u.username = b.username
WHERE b.id IS NULL
O
LEFT JOIN
operação preserva todas as linhas em user
, tenham ou não correspondências em biodata
. (Por outro lado, um JOIN
comum suprimiria linhas de user
que não tinha correspondências.) O b.id IS NULL
operação filtra as linhas que fazem tem partidas.