可能重复:
加入与子查询
我需要处理大量数据,但有时需要根据条件排除记录。
由于要检查的数据量以及将返回的数据量一次是数万个,并且会经常运行,我想知道是否有人可以阐明哪种方法最好在速度和负载方面,尽可能保持平稳运行
SELECT a.*
FROM table_a as a
LEFT JOIN table_b
ON table_b.a_id = a.id
WHERE table_b.status <> 'new'
或者
SELECT *
FROM table_a
WHERE id NOT IN (
SELECT a_id
FROM table_b
WHERE status <> 'new'
)