【发布时间】:2021-08-15 23:44:58
【问题描述】:
我有一张这样的桌子:
| cable_id | total_capacity | start | end |
|---|---|---|---|
| XX1 | 12 | 1 | 5 |
| XX1 | 12 | 7 | 7 |
| XX1 | 12 | 8 | 9 |
| XX1 | 12 | 11 | 12 |
(这是一个cable_id的示例,还有数百万个) 使用 Oracle SQL,我想为每个 cable_id 创建一个表,其中包含不在 total_capacity 范围内的所有起始值。
在我的示例中,6 和 10 是从 1 到 12 范围内的起始缺失值,因此结果表将是这样的:
| cable_id | missing_number |
|---|---|
| XX1 | 6 |
| XX1 | 10 |
我想用 cable_id 和所有 total_capacity 范围数字(从 1 到 12)创建另一个表,然后与我的第一个表进行外部连接,但这可能非常耗时(记住有数百万根电缆)而 Oracle 并没有让创建值范围变得容易......
对此的任何帮助将不胜感激:)
【问题讨论】:
标签: sql oracle range distinct-values