选择所有记录不符合连接表中的某些条件

时间:2009-05-29 09:40:57

标签: sql mysql

假设我们这里有两个表,帖子和评论,关系是一对多,在评论表中有一个字段调用comment_date。

现在我很难得到预期的结果如下:

所有帖子在某个日期之后都没有评论,我可以通过SQL语句完成吗?

2 个答案:

答案 0 :(得分:4)

SELECT *
FROM posts p
WHERE NOT EXISTS(
    SELECT 1
    FROM comments c
    WHERE c.comment_date >= 'deadline'
    AND p.post_id = c.post_id
)

答案 1 :(得分:1)

SELECT  *
FROM    posts
WHERE   post_id NOT IN 
        (
        SELECT  comment_post
        FROM    comments
        WHERE   comment_date >= @deadline
        )