Заказать курсовые, контрольные, рефераты...
Образовательные работы на заказ. Недорого!

Соединение древовидного запроса с другими таблицами

РефератПомощь в написанииУзнать стоимостьмоей работы

Oracle не позволяет соединять другие таблицы в древовидном запросе с использованием простого оператора SELECT. Например, предположим, что к каждой записи служащего, выбранной в древовидном запросе, нужно также добавить наименование его отдела. Можно попытаться использовать следующий запрос: Select rpad (' (level-l)*3) — |e.emp_last_name, d. dept_name from emp e, dept d where e. dept_no = d. dept_… Читать ещё >

Соединение древовидного запроса с другими таблицами (реферат, курсовая, диплом, контрольная)

Oracle не позволяет соединять другие таблицы в древовидном запросе с использованием простого оператора SELECT. Например, предположим, что к каждой записи служащего, выбранной в древовидном запросе, нужно также добавить наименование его отдела. Можно попытаться использовать следующий запрос:

select rpad (' (level-l)*3) | |e.emp_last_name, d. dept_name from emp e, dept d where e. dept_no = d. dept_ no connect by e. supervisor_emp_id = prior e. emp Jd start with e. supervisor_emp_id is null;

ORA-1 437: cannot have join with CONNECT BY.

В этом примере показано, что таким образом невозможно присоединить другую таблицу к древовидному запросу для получения дополнительной информации. Однако, начиная с версии 7.1 RDBMS Oracle, можно использовать динамическое представление внутри фразы from запроса для создания древовидного запроса как отдельного автономного блока с целью облегчения операции соединения. Следующий пример может быть использован для выборки информации о служащем и всех его подчиненных: select d. dept_name, el. emp_Iast_name, el. salary from emp el, dept d, (select empjd from emp.

connect by supervisor _ emp_ id = prior emp_ id start with emp_security_uid = uid) e2.

where el. emp_id = e2. emp_id and el. dept_no = d. dept_no;

DEPT_NAME EMPJLAST_NAME SALARY.

CONSULTING SERVICES LUNDY 95 000.

CONSULTING SERVICES BEECHER 72 000.

CONSULTING SERVICES NEUMANN 65 000.

CONSULTING SERVICES MITTLER 64 000.

CONSULTING SERVICES CANNELL 68 000.

Показать весь текст
Заполнить форму текущей работой