powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Группировка с rollup
5 сообщений из 5, страница 1 из 1
Группировка с rollup
    #32043104
flash
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день,
вот такой у меня вопросец возник.
Есть запрос :

select pi.name pin, okr.name okrn, ss.name ssn,
sum(grr.ob_r) plan,
from sfed_okr okr,ssub_rf ss,
spi_grr pi, objgrr grr
where grr.vid_opic=pi.code
and grr.fedokrc=okr.code
and grr.oblastc=ss.code
group by rollup(pi.name,okr.name,ss.name)

который возвращает следующее:


PIN OKRN SSN PLAN
кирпич Сибирский Иркутская обл. 300
кирпич Сибирский 300
кирпич 300

долерит Сибирский Р. Алтай 200
долерит Сибирский Иркутская обл. 500
долерит Сибирский 700

долерит Приволжский Саратовская обл.400
долерит Приволжский 400
долерит 1100

Хотелось бы получить следующий результат:

PIN OKRN SSN PLAN

кирпич 300
кирпич Сибирский 300
кирпич Сибирский Иркутская обл. 300

долерит 1100

долерит Сибирский 700
долерит Сибирский Р. Алтай 200
долерит Сибирский Иркутская обл. 500

долерит Приволжский 400
долерит Приволжский Саратовская обл.400

Иными словами, чтобы итоговые суммы выводились в порядке от общего к частному.
Очень не хочется разбирать recordset на клиенте, так как это лишь упрощенный вариант запроса.
Используется Oracle 8.1.5, Win2k,в качестве клиента ASP скрипт (ADO).
Заранее благодарю за помощь.
...
Рейтинг: 0 / 0
Группировка с rollup
    #32043136
ora600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi

Наверное, что-то вроде
select
...
order by pi.name pin, okr.name okrn, ss.name ssn,
, grouping(pi.name) desc
, grouping(okr.name) desc
, grouping(ss.name) desc
...
Рейтинг: 0 / 0
Группировка с rollup
    #32043155
flash
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да нет, с order by я уже пробовал во всех вариантах,
не выходит(-:. Тут нужно свежее решение,
а ничего в голову не приходит уже второй день.
...
Рейтинг: 0 / 0
Группировка с rollup
    #32043174
ora600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело не в order by , а в grouping(...) .

Так что-ли ?
order by
grouping(pi.name) desc , pi.name pin,
grouping(okr.name) desc, okr.name okrn,
grouping(ss.name) desc, ss.name ssn
...
Рейтинг: 0 / 0
Группировка с rollup
    #32043222
flash
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да именно так , спасибо...
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Группировка с rollup
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]