|
|
|
Запрос с выводом подзаголовка наверху
|
|||
|---|---|---|---|
|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Хочу получить вывод средствами sql(pl/sql) вида: L R D K 1 1 2 1 10 100 2 1 10 101 2 1 10 104 2 1 11 100 2 1 11 101 1 2 2 2 20 101 2 2 21 102 1 4 2 4 10 101 1 5 2 5 10 101 L-уровень вложенности либо 1, либо 2 (1 родитель) R-регион D-дом K-квартира Позволяет ли реализовать это функция CUBE? Или есть другая? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2016, 11:16 |
|
||
|
Запрос с выводом подзаголовка наверху
|
|||
|---|---|---|---|
|
#18+
Сделал пока с костылями, может будет работать: with tmp as ( select 1 region, 10 dom, 100 kvartira from dual union all select 1,10,101 from dual union all select 1,10,104 from dual union all select 1,11,100 from dual union all select 1,11,101 from dual union all select 2,20,101 from dual union all select 2,21,102 from dual union all select 4,10,101 from dual union all select 5,10,101 from dual ) select region, replace(grouping(dom),0,2) g, dom, kvartira from tmp group by region, rollup(dom,kvartira) having (kvartira is not null and dom is not null) or (kvartira is null and dom is null) --group by region, cube(dom,kvartira) order by region, g, kvartira ; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2016, 11:28 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39324349&tid=1887267]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
178ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 495ms |

| 0 / 0 |
