【发布时间】:2021-05-04 14:21:57
【问题描述】:
我有以下数据:
结构:
| id | parent_id |
|---|---|
| 1 | null |
| 1.1 | 1 |
| 1.1.1 | 1.1 |
| 1.1.2 | 1.1 |
| 2 | null |
| 2.1 | 2 |
| 2.1.1 | 2.1 |
| 2.2 | 2 |
| 2.2.1 | 2.2 |
价值观:
| id | value |
|---|---|
| 1.1.1 | 10 |
| 1.1.1 | 15 |
| 1.1.2 | 5 |
| 2.1.1 | 20 |
| 2.2.1 | 10 |
我想带来以下结果:
| id | value |
|---|---|
| 1 | 30 |
| 1.1 | 30 |
| 1.1.1 | 25 |
| 1.1.2 | 5 |
| 2 | 30 |
| 2.1 | 20 |
| 2.1.1 | 20 |
| 2.2 | 10 |
| 2.2.1 | 10 |
我需要一个 oracle 查询来给我这个结果,知道怎么做吗?
PS:我知道如何用 subselect 解决这个问题,但是我需要一种更有效的方法
【问题讨论】:
-
请展示您尝试过的内容。还将您的示例数据呈现为 db fiddle 或 CTE 以供即时使用。
-
几年前我在 asktom 上问过一个类似的问题。这可能会让你走上正轨:asktom.oracle.com/pls/apex/…
-
您正在寻找 CONNECT BY。