Операторы SOME и ANY взаимозаменяемы.
Пример 1.Найти студентов, которые получили оценки по разным учебным предметам.
SELECT *
FROMSTUDENT
WHERESNUM= ANY
(SELECTSNUM
FROM USP);
Результат запроса:
SNUM SFAM SIMA SOTCH STIP
--------------------------------------------------------------- ---------------
3412 Поляков Анатолий Алексеевич 25.50
3413 Cтарова Любовь Михайловна 17.00
3414 Гриценко Владимир Николаевич 0.00
3416 Нагорный Евгений Васильевич 25.50
В ряде случаев допускается использование операторов IN или EXISTSвместо оператора ANY.
Пример 2.Найти студентов, которые получили оценки по разным учебным предметам.
SELECT *
FROMSTUDENT
WHERESNUM IN
(SELECTSNUM
FROM USP);
Результат запроса аналогичен примеру 1.
Оператор ANY может использовать другие реляционные операторы, за исключением равняется, и, таким образом, реализовать сравнение, которые недоступны с IN.
Пример 3. Вывести название учебных предметов, для которых существует хотя бы одна учебная дисциплина с количеством часов, меньшим, чем у текущей.
SELECTPNAME
FROMPREDMET
WHEREHOURS>ANY
(SELECTHOURS
FROM PREDMET);
Результат запроса:
PNAME
--------------
Физика
Химия
Математика
Пример 4. Реализовать предыдущий запрос с использованием EXISTS.
SELECTPNAME
FROMPREDMET FIRST