Основы языка TRANSACT SQL. Казакова И.А. - 82 стр.

UptoLike

Составители: 

81
ванное промежуточное отношение, временную таблицу. Оно может
использоваться только в том месте, где появляется в подзапросе.
К такому отношению невозможно обратиться по имени из какого-
либо другого места запроса.
Применяемые к подзапросу операции основаны на операциях,
которые применяются к множеству, а именно:
{ WHERE | HAVING } выражение [ NOT ] IN (подзапрос);
{ WHERE | HAVING } выражение оператор_сравнения {
ALL | SOME | ANY} (подзапрос);
{WHERE | HAVING } [ NOT ] EXISTS (подзапрос);
Использование операций IN и NOT IN
Предикат IN используется для отбора в главном запросе толь-
ко тех записей, которые содержат значения, совпадающие с одним
из отобранных подчиненным запросом:
IN равно любому из значений, полученных во внутреннем
запросе.
NOT IN нe равно ни одному из значений, полученных во
внутреннем запросе.
Пример 63. Выбрать студентов, которые получили на экзаме-
не оценку не менее 4:
SELECT * FROM Students
WHERE ID_Student IN
(SELECT ID_Student FROM Progress
WHERE Examen >= 4);
Результат выполнения запроса приведен на рис. 30.
Рис. 30. Использование предиката IN
ванное промежуточное отношение, временную таблицу. Оно может
использоваться только в том месте, где появляется в подзапросе.
К такому отношению невозможно обратиться по имени из какого-
либо другого места запроса.
     Применяемые к подзапросу операции основаны на операциях,
которые применяются к множеству, а именно:
      { WHERE | HAVING } выражение [ NOT ] IN (подзапрос);
      { WHERE | HAVING } выражение оператор_сравнения {
ALL | SOME | ANY} (подзапрос);
      {WHERE | HAVING } [ NOT ] EXISTS (подзапрос);
            Использование операций IN и NOT IN
     Предикат IN используется для отбора в главном запросе толь-
ко тех записей, которые содержат значения, совпадающие с одним
из отобранных подчиненным запросом:
     IN – равно любому из значений, полученных во внутреннем
запросе.
     NOT IN – нe равно ни одному из значений, полученных во
внутреннем запросе.
     Пример 63. Выбрать студентов, которые получили на экзаме-
не оценку не менее 4:
     SELECT * FROM Students
     WHERE ID_Student IN
     (SELECT ID_Student FROM Progress
     WHERE Examen >= 4);
     Результат выполнения запроса приведен на рис. 30.




               Рис. 30. Использование предиката IN



                               81