powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Подзапросы
9 сообщений из 9, страница 1 из 1
Подзапросы
    #39410443
mikky_green
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задача состоит с следующем:
Необходимо сформируйте запрос, выводящий имена руководителей, у которых все подчиненные получают больше $2500

Чувствую, что решение лежит на поверхности и оно простое, но целый день мучаюсь, не могу написать корректно работающий запрос.
Единственное, до чего смог дойти, это вывод руководителей, у которых ХОТЯ БЫ ОДИН работник получает зарплату больше 2500.
Мой запрос:

Код: plaintext
select ename from emp chief where chief.empno IN(select slave.mgr from emp slave where slave.sal > 2500);

Второй вариант:
Код: plaintext
1.
select ename, empno from emp chief
     where chief.empno = ANY(select slave.mgr from emp slave where slave.sal >= 2500);

Знаю, что надо использовать ALL для решения это задачи, но никак не могу адекватно его использовать.
Знаю, что ANY и IN в данном случае не уместны, но их я употребил не из-за незнания, а из-за отчаяния.
...
Рейтинг: 0 / 0
Подзапросы
    #39410449
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
select chief.ename, chief.empno
  from emp chief join emp slave on chief.empno=slave.mgr
  group by chief.ename, chief.empno
  having min(slave.sal) >= 2500



Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подзапросы
    #39410450
mikky_green
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,
Спасибо огромное, добрый человек)
Буду разбираться
...
Рейтинг: 0 / 0
Подзапросы
    #39410560
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikky_green,


ВСЕ подчиненные!
Видимо, надо ВСЕ дерево подчинения раскручивать рекурсивным запросом
...
Рейтинг: 0 / 0
Подзапросы
    #39410561
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
connect by
...
Рейтинг: 0 / 0
Подзапросы
    #39410562
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikky_green,

any, all не используй никогда, они излишне.
exists, in их заменяют.
...
Рейтинг: 0 / 0
Подзапросы
    #39410618
MasterZivmikky_green,

any, all не используй никогда, они излишне.
exists, in их заменяют.

А "потому что" будет или вновь принять как данность?
...
Рейтинг: 0 / 0
Подзапросы
    #39410640
mikky_greenЗнаю, что надо использовать ALL ...
Знаю, что ANY и IN в данном случае не уместны...
All можно использовать, но тогда подмножество должно соответствовать коррелируемому менеджеру. Условие в этом случае не на его id, а на зарплату 2500 < all (...)
any тоже можно использовать, но с "не равно" и условие зарплаты поменять на обратное.

Но возможно, что рассматриваемый подход неверен. У руководителя в подчинении могут быть руководители со своими подчиненными. И кто же тогда "все подчиненные"?
...
Рейтинг: 0 / 0
Подзапросы
    #39410858
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Вассал моего вассала - не мой вассал."
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Подзапросы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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