@albertalexandrov

Нормальный пример ALL?

Всем привет!)

Я не совсем осознаю оператор ALL. Вот например, пример:

SELECT 
    first_name, last_name, salary
FROM
    employees
WHERE
    salary > ALL (SELECT 
            salary
        FROM
            employees
        WHERE
            department_id = 2)


Здесь в подзапросе находятся все зарплаты сотрудников отдела (департамента) с id = 2. Во внешнем запросе находятся сотрудники уже всех отделов, зарплата которых выше всех зарплат сотрудников 2-го отдела, то есть выше самой высокой зарплаты.

Почему бы не записать так:

SELECT 
    first_name, last_name, salary
FROM
    employees
WHERE
    salary > (SELECT 
            MAX(salary)
        FROM
            employees
        WHERE
            department_id = 2)


И везде ведь такие примеры. Особенно в ступор вводит, когда я вижу = ALL(subquery).
Я что-то не так понимаю?
  • Вопрос задан
  • 46 просмотров
Пригласить эксперта
Ответы на вопрос 1
@d-stream
Готовые решения - не подаю, но...
может вот такой пример окажется понятнее: www.sql-tutorial.ru/ru/book_using_any_all_keywords...

p/s/ за последние лет 20 ни разу не пригодился ни ANY ни ALL )
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы