这个问题基于以下问题,但有一个附加要求:PostgreSQL:如何在线性“祖先-后代”关系中找到最后一个后代
基本上,我需要的是一个 Postgre-SQL 语句,它在匹配附加条件的线性“祖先-后代”关系中找到最后一个后代。
例子:
这里是表“RELATIONSHIP_TABLE”的内容:
id | id_ancestor | id_entry | bool_flag
---------------------------------------
1 | null | a | false
2 | 1 | a | false
3 | 2 | a | true
4 | 3 | a | false
5 | null | b | true
6 | null | c | false
7 | 6 | c | false
特定层次结构中的每条记录都具有相同的“id_entry” 在此示例中存在 3 种不同的“祖先-后代”关系:
1. 1 <- 2 <- 3 <- 4
2. 5
3. 6 <- 7
Question PostgreSQL: How to find the last descendant in a linear "ancestor-descendant" 关系展示了如何找到每个关系的最后一条记录。在上面的例子中:
1. 4
2. 5
3. 7
所以,这次我需要的是“id_entry”的最后一个后代,其“bool_flag”设置为true。在上面的例子中:
1. 3
2. 5
3. <empty result>
有谁知道解决方案?
提前致谢 :)
QStormDS