【发布时间】:2021-07-29 14:12:14
【问题描述】:
我有一个这样结构的表:
- 元素
- FATHER_ELEMENT
- INITIAL_DATE
- END_DATE
我可以有这种情况:
| ELEMENT| FATHER_ELEMENT|
|--------|---------------|
| A | B |
| A | C |
| B | D |
| D | E |
| X | Y |
我想要这个输出:
| LIV0| LIV1|LIV2| LIV3| LIV4|
|-----|-----|----|-----|-----|
| A | B |D |E |E |
| A | C |C |C |C |
| B | D |D |D |D |
| X | Y |Y |Y |Y |
基本上,我想从所有父亲开始生成一些行,并为每个路径有 1 条记录,直到我到达不同的叶子,我希望它使用 12 级(在示例中有 5 级),例如,如果,对于一条路径,我有 deep = 4,输出应该复制叶子,直到达到最后一层。
我怎样才能得到这个结果?
谢谢
【问题讨论】:
-
请显示您目前拥有的代码:您尝试了什么,有什么问题?您是否有可变数量的列,或者它们受到某个固定的可能数量的限制?实际上还有两个问题:关于层次结构和日期过滤(当源数据中不存在日期字段时)。请每个问题只问一个问题。
-
感谢您的评论和建议,我删除了数据过滤部分,现在我正在编辑添加我尝试过的查询的问题。
标签: sql oracle tree hierarchy connect-by