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

UptoLike

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

92
(SELECT имя_столбца [,имя_столбца ] FROM таблица
[ WHERE ]);
Рассмотрим примеры, поясняющие использование команды
UPDATE с подзапросом.
Пример 75. Увеличить значение размера стипендии на 200 руб.
в записях студентов, сдавших экзамены на 4 и 5:
UPDATE Students
SET Stipendiya = Stipendiya + 200
WHERE 4 <=
(SELECT MIN(Examen)
FROM Progress
WHERE Progress.ID_Student = Students.ID_Student);
Пример 76. Уменьшить величину стипендии на 200 руб. всем
студентам, получившим на экзамене минимальную оценку:
UPDATE Students
SET Stipendiya = Stipendiya - 200
WHERE ID_Student IN
(SELECT ID_Student
FROM Progress A
WHERE Examen =
(SELECT MIN(Examen)
FROM Progress B
WHERE A.Semestr = B. Semestr));
10.4.3. Подзапросы в команде DELETE
Базовый синтаксис команды следующий.
DELETE FROM имя_таблицы
[ WHERE ОПЕРАЦИЯ [ значение ]
(SELECT имя_столбца
FROM имя_таблицы
[ WHERE ]);
Пример 77. Найти наименьшее значение оценки, полученной
в каждом семестре, и удалить из таблицы сведения о студенте, ко-
торый получил эту оценку. Запрос будет иметь вид:
     (SELECT имя_столбца [,имя_столбца ] FROM таблица
     [ WHERE ]);
     Рассмотрим примеры, поясняющие использование команды
UPDATE с подзапросом.
     Пример 75. Увеличить значение размера стипендии на 200 руб.
в записях студентов, сдавших экзамены на 4 и 5:
     UPDATE Students
      SET Stipendiya = Stipendiya + 200
      WHERE 4 <=
      (SELECT MIN(Examen)
      FROM Progress
      WHERE Progress.ID_Student = Students.ID_Student);
     Пример 76. Уменьшить величину стипендии на 200 руб. всем
студентам, получившим на экзамене минимальную оценку:
     UPDATE Students
     SET Stipendiya = Stipendiya - 200
     WHERE ID_Student IN
     (SELECT ID_Student
     FROM Progress A
     WHERE Examen =
     (SELECT MIN(Examen)
     FROM Progress B
     WHERE A.Semestr = B. Semestr));

          10.4.3. Подзапросы в команде DELETE
     Базовый синтаксис команды следующий.
     DELETE FROM имя_таблицы
     [ WHERE ОПЕРАЦИЯ [ значение ]
     (SELECT имя_столбца
     FROM имя_таблицы
     [ WHERE ]);
     Пример 77. Найти наименьшее значение оценки, полученной
в каждом семестре, и удалить из таблицы сведения о студенте, ко-
торый получил эту оценку. Запрос будет иметь вид:

                              92