问题描述
我的评论表包含以下列:
Correct Answer
我需要选择在其 `comment_id` - comment
`parent_comment_id` - a reply to comment.
列中指定缺失(不存在)comment_id
的所有 comment_id
。
示例:
马克说:你好,你好吗?
Jonh 回复:我很好,谢谢。
在我们的数据库中,这些注释将如下所示:parent_comment_id
comment id
parent_comment_id
374 0你好,你怎么样?
375 374我很好,谢谢你。
现在想象一下,comment_text
已从我们的数据库中删除。这将使 comment_id 374
指向其 comment_id 375
中不存在的 comment_id
。
所以我的问题是如何选择这样的评论,这些评论是对不再存在的评论的回复?
解决方法
这回答了问题的原始版本。
我需要选择在其 parent_comment_id 列中指定了缺失(不存在)comment_id 的所有 comment_id。
您可以使用not exists
:
select c.*
from comments c
where not exists (select 1
from comments cp
where cp.comment_id = c.parent_comment_id
);