【发布时间】:2011-02-28 22:00:01
【问题描述】:
我有两个表 posts 和 cmets。表 cmets 具有 post_id 属性。我需要获取所有类型为“open”的posts,其中没有类型为“good”且创建日期为 5 月 1 日的 cmets。
使用这样的 SQL 查询是否最佳:
SELECT posts.* FROM posts
WHERE NOT EXISTS (
SELECT comments.id FROM comments WHERE comments.post_id = posts.id
AND comments.comment_type = 'good' AND
comments.created_at BETWEEN '2010-05-01 00:00:00' AND '2010-05-01 23:59:59')
我不确定 NOT EXISTS 在这种情况下是完美的构造。
【问题讨论】:
标签: mysql performance not-exists