简单的例子.让我们使用LEFT OUTER JOIN Select 有成绩的学生:
SELECT DISTINCT s.id
FROM students s
LEFT JOIN grades g ON g.student_id = s.id
WHERE g.student_id IS NOT NULL
现在,左半连接也是如此:
SELECT s.id
FROM students s
WHERE EXISTS (SELECT 1 FROM grades g
WHERE g.student_id = s.id)
后者通常更高效(取决于具体的DBMS和查询优化器).