powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как правильно переписать запрос на join'ы
14 сообщений из 14, страница 1 из 1
Как правильно переписать запрос на join'ы
    #39888771
nc1318
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
select *
from employees e
where e.job_id in (select job_id from jobs where job_title like 'Stock Clerk')
and e.salary < 3500
and (e.hire_date is not null
and e.department_id not in (select department_id from departments where department_id = 100 or department_id = 90))
order by e.employee_id
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888784
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем случае - никак. Нужно знание особенностей конкретных таблиц.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888790
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nc1318,

зачем?
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888797
nc1318
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,

Ради интереса
экспериментирую можно сказать
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888804
Фотография Кобанчег
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

В общем случае - никак.
И даже сможешь привести пример когда ansi/semi невозможно переписать на явные соединения?
Dimitry Sibiryakov

Нужно знание особенностей конкретных таблиц.
Всё что надо знать - это уникальность job_id в таблице jobs.
В зависимости от этого может понадобится единожды использовать дистинкт.
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888817
nc1318
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
.
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888819
nc1318
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кобанчег,

Допустим, что он уникальный
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888879
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nc1318
Ради интереса
Ради интереса эксперименитруют самостоятельно. Наблюдать, что кто-то сделает это заместо тебя - вуайеризм.
Кобанчег
Всё что надо знать - это уникальность job_id в таблице jobs.
В зависимости от этого может понадобится единожды использовать дистинкт.
В запросе есть еще departments, а с ним в общем случае (без where department_id= в подзапросе), вопрос не только с уникальностью.
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888913
IgorSm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эта строка, если она не отладочная, то совсем не понятна
Код: plsql
1.
and e.department_id not in (select department_id from departments where department_id = 100 or department_id = 90))


Почему не просто IN (80,90)
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888914
IgorSm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sorry
IN (90,100)
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888917
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorSm,

потому что это будет другое условие
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888919
IgorSm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
123йй,

Мдя там же NOT IN (, надо больше спать (

Все предыдущие комментарии прошу считать некорректными
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39888925
Dshedoo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
select *
from employees e
join jobs j on e.job_id = j.job_id and j.job_title like 'Stock Clerk' --если job_id уникальный для jobs
left join departments d on e.department_id = d.department_id and (department_id = 100 or department_id = 90)
where e.salary < 3500 and e.hire_date is not null and d.department_id is null
order by e.employee_id 
...
Рейтинг: 0 / 0
Как правильно переписать запрос на join'ы
    #39889442
nc1318
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-,

а кто сказал, что я не сделал самостоятельно?
просто хочу посмотреть другие варианты реализации
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как правильно переписать запрос на join'ы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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