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

UptoLike

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

91
Подзапрос вычисляет количество строк с одним и тем же се-
местром, совпадающим с семестром, для которого сформирована
очередная группа основного запроса.
10.4. Подзапросы в командах модификации
10.4.1. Подзапросы в команде INSERT
Подзапросы могут использоваться и с командами языка мани-
пулирования данными (DML).
Команда INSERT использует данные, возвращаемые подза-
просом, для помещения их в другую таблицу. Выбранные в подза-
просе данные можно модифицировать с помощью символьных или
числовых функций, а также функций дат и времени.
Базовый синтаксис соответствующей команды должен быть
следующим.
INSERT INTO имяаблицы [ (столбец1 [, столбец2 ]) ]
SELECT [ *| столбец1 [, столбец2 ]]
FROM таблица1 [, таблица2 ]
[ WHERE значение ОПЕРАЦИЯ значение ];
Вот пример использования команды INSERT с подзапросом.
Пример 74. Пусть таблица STUDENTI имеет структуру, пол-
ностью совпадающую со структурой таблицы STUDENT. Запрос,
позволяющий заполнить таблицу STUDENTI записями из таблицы
STUDENT обо всех студентах, получающих стипендию в размере
1700 рублей, выглядит следующим образом:
INSERT INTO Students1
SELECT *
FROM Students
WHERE Stipendiya = 1700;
10.4.2. Подзапросы в команде UPDATE
С помощью команды UPDATE с подзапросом можно обнов-
лять данные как одного, так и нескольких столбцов сразу.
Базовый синтаксис команды следующий:
UPDATE таблица
SET имя_столбца [, имя_столбца ] =
     Подзапрос вычисляет количество строк с одним и тем же се-
местром, совпадающим с семестром, для которого сформирована
очередная группа основного запроса.

     10.4. Подзапросы в командах модификации
          10.4.1. Подзапросы в команде INSERT
     Подзапросы могут использоваться и с командами языка мани-
пулирования данными (DML).
     Команда INSERT использует данные, возвращаемые подза-
просом, для помещения их в другую таблицу. Выбранные в подза-
просе данные можно модифицировать с помощью символьных или
числовых функций, а также функций дат и времени.
     Базовый синтаксис соответствующей команды должен быть
следующим.
     INSERT INTO имя_таблицы [ (столбец1 [, столбец2 ]) ]
     SELECT [ *| столбец1 [, столбец2 ]]
     FROM таблица1 [, таблица2 ]
     [ WHERE значение ОПЕРАЦИЯ значение ];
     Вот пример использования команды INSERT с подзапросом.
     Пример 74. Пусть таблица STUDENTI имеет структуру, пол-
ностью совпадающую со структурой таблицы STUDENT. Запрос,
позволяющий заполнить таблицу STUDENTI записями из таблицы
STUDENT обо всех студентах, получающих стипендию в размере
1700 рублей, выглядит следующим образом:
     INSERT INTO Students1
      SELECT *
      FROM Students
      WHERE Stipendiya = 1700;

          10.4.2. Подзапросы в команде UPDATE
     С помощью команды UPDATE с подзапросом можно обнов-
лять данные как одного, так и нескольких столбцов сразу.
     Базовый синтаксис команды следующий:
     UPDATE таблица
     SET имя_столбца [, имя_столбца ] =

                             91