【发布时间】:2012-06-27 23:43:45
【问题描述】:
可能重复:
Mysql: Perform of NOT EXISTS. Is it possible to improve permofance?
有没有更好/最佳的方法来做到这一点。我应该使用exists 而不是join 吗?还是两个单独的查询?那么临时表呢,因为我正在阅读那些但不确定的内容。
从群组中获取成员电子邮件。检查他们是否还没有收到物品。
SELECT m.email,g.id
FROM group g
LEFT JOIN members m
ON g.mid = m.id
AND g.gid='1'
WHERE NOT EXISTS
( SELECT id
FROM items AS i
WHERE i.mid=m.id
AND i.item_id='5'
)
【问题讨论】:
-
@Amit Bhargava - 不,因为我的是三个有连接的表。
-
如果你只想要一个组的成员,为什么你有
LEFT JOIN? -
@ypercube - 是的,这是正确的,但我也想要来自组的 id。 ty
标签: mysql left-join not-exists