Postgresql查询以选择不引用组中其他成员的记录

时间:2016-08-26 13:46:05

标签: postgresql

您将如何构建以下查询:

“所有带有attribute = true的记录,不引用组中的其他成员”

每条记录都有一个“parent_id”,它引用同一个表中的另一条记录。我想选择其“parent_id”不引用所选组中的另一个成员的节点。这可以在postgresql中完成吗?我该怎么做?

2 个答案:

答案 0 :(得分:2)

在非常通用的层面上,使用这样的子查询应该有效:

SELECT *
FROM Records
WHERE parent_id NOT IN (
  SELECT id
  FROM Records
  WHERE
    attribute=TRUE
)
AND attribute=TRUE

但是,正如@a_horse_with_no_name所评论的那样,如果这没有帮助,那么您应该编辑问题,以提供有关您拥有的内容,您期望的内容以及您尝试过的内容的更多详细信息。

答案 1 :(得分:1)

{{1}}