Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Подкиньте кто-нибудь идейку / 9 сообщений из 9, страница 1 из 1
06.12.2016, 20:08
    #39361494
wlyaman
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
Используя таблицы REGIONS, COUNTRIES, LOCATIONS, DEPARTMENTS, WAREHOUSES, вывести иерархию объектов "Регион – Страна – Город (населенный пункт) – Подразделение или Товарный склад" для региона region_id=2 (region_name = 'Americas ').
Иерархия должна быть выведена одной командой SELECT.
Внимание! Запрещается использование фраз CONNECT BY, START WITH.
В результат вывести 2 (два) столбца:
1. Номер уровня, на котором находится в иерархии данный объект (LEVEL),
2. Имя объекта, дополненное слева (LEVEL -1)*3 пробелами.
Названия подразделений компании дополните справа строкой '-d'.
Названия товарных складов дополните справа строкой '-w'.
Названия регионов, стран и городов ничем дополнять не нужно.
Объекты одного уровня, подчиненные одному и тому же узлу, должны быть отсортированы по именам.
Пример результата прикреплен картинкой.
Есть у кого-нибудь идеи как это можно реализовать без CONNECT BY? Еще PL/SQL нельзя использовать.
...
Рейтинг: 0 / 0
06.12.2016, 20:36
    #39361503
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
wlyaman,

1) recursive subquery factoring
2) model

В чем причина ограничения?
...
Рейтинг: 0 / 0
06.12.2016, 20:40
    #39361504
-2-
-2-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
wlyamanбез CONNECT BYТебе запретили использовать connect by, чтобы не занимался ненужной ерундой. Все равно, чтобы его прикрутить, сначала придется получить данные как на рисунке.
...
Рейтинг: 0 / 0
07.12.2016, 06:44
    #39361568
Не понятно
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
wlyaman,

Зачем тут вообще коннект бай, коли все уровни по разным таблицам.
Последовательный лефт джойн таблиц типа (Селект фром локация юнион олл фром дуал)
...
Рейтинг: 0 / 0
07.12.2016, 07:29
    #39361574
роллуп
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
Не понятноюнион олл фром дуалзаманаешься фильтровать промежности.
...
Рейтинг: 0 / 0
07.12.2016, 17:46
    #39362040
stax..
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
wlyaman,

REGIONS, COUNTRIES, LOCATIONS, DEPARTMENTS, WAREHOUSES
лень набірать тестовые данные

если предоставите попробую нарисовать селект

.....
stax
...
Рейтинг: 0 / 0
07.12.2016, 19:59
    #39362124
Понятно
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
роллуп,

Фильтровать не замучаюсь, но с тобой будет кошернее. :)
Так как вся отчетность в интерфейсе настраивается, то оракловым сворачиванием почти не пользуюсь. Вот и забыл.
...
Рейтинг: 0 / 0
07.12.2016, 21:06
    #39362143
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
а я такие задачи как раз через коннект бай и решаю
...
Рейтинг: 0 / 0
07.12.2016, 21:18
    #39362149
andreymx
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подкиньте кто-нибудь идейку
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select id, n
  from
(
select r.id, r.name n, r.name n1, null n2, null n3, null n4 from REGIONS r
union all
select c.id, '   '||с.name n, r.name n1, c.name n2, null n3, null n4 from REGIONS r, COUNTRIES c where ...
union all
три таблицы
union all
четыре таблицы
)
 order by n1, n2, n3, n4
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Подкиньте кто-нибудь идейку / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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