Подзапросы
Выбрать из таблицы «Заказано» заказы на товары с маркой «Pavlova». Марки товаров хранятся в таблице «Товары». SELECT * FROM Заказано WHERE КодТовара=(SELECT КодТовара FROM Товары WHERE Марка='Pavlova');
Предикат EXISTS. Используя таблицы «Сотрудники», «Клиенты» и «Заказы», создать и выполнить запрос на выборку всех клиентов из Рио-Де-Жанейро, если был сделан хотя бы один заказ из Рио-Де-Жанейро, оформленый сотрудником Кротовым. SELECT DISTINCT b.Название FROM Сотрудники AS a, Клиенты AS b WHERE EXISTS (SELECT * FROM Клиенты WHERE Город='Рио-де-Жанейро' AND a.Фамилия='Кротов');
Предикаты количественного сравнения ANY, SOME и ALL. Выбрать из таблицы «Товары» цены товаров от поставщика с кодом 2; записать эти цены; SELECT Цена FROM Товары WHERE КодПоставщика=2; Полученные данные (1): 947,25р., 765,00р., 990,00р., 960,75р.
Используя ANY, выбрать все товары, цены которых больше цен поставщика 2; сравнить выбранные цены с записанными; SELECT * FROM Товары WHERE Цена>ANY(SELECT Цена FROM Товары WHERE КодПоставщика=2); Были выбраны цены больше, чем наименьшая цена из полученных данных (1). Повторить предыдущий пункт, используя вместо ANY предикат ALL; сравнить результаты. SELECT * FROM Товары WHERE Цена>ALL(SELECT Цена FROM Товары WHERE КодПоставщика=2); Были выбраны цены больше, чем наибольшая цена из полученных данных (1).
Лабораторная работа № 17. Объединение результатов нескольких запросов – UNION. Создание таблицы из существующих таблиц – SELECT … INTO Предложение UNION Выбрать из таблиц «Клиенты» и «Сотрудники» следующие данные: фамилию и имя; должность, город. В дополнительном столбце указать, из какой таблицы выбрана запись. SELECT ALL Должность, Город, 'Заказы' AS Источник FROM Клиенты UNION SELECT ALL Фамилия, Имя, 'Клиенты' AS Источник FROM Сотрудники;
Создание таблицы из существующих таблиц с помощью SELECT … INTO. С помощью SELECT … INTO создать таблицу «Клиенты2», содержащую данные из таблицы «Клиенты» обо всех клиентах, живущих в Лондоне. SELECT DISTINCT * INTO Клиенты2 FROM Клиенты WHERE Город='Лондон';
Лабораторная работа № 18. Операторы INSERT, UPDATE, DELETE Вставка в таблицу одной или нескольких строк с помощью оператора INSERT. Добавить в таблицу «писатель» Толстого А.Н.. INSERT INTO Писатель (КодП, ФИО) VALUES (10, 'А.Н.Толстой');
Добавить в таблицу «книга» - роман «Сёстры». INSERT INTO Книга (КодКн, Наим, Автор) VALUES (10, 'Сёстры', 10);
Изменение (редактирование) данных в таблице с помощью оператора UPDATE. С помощью оператора UPDATE занести в таблицу «книга» все недостающие значения полей. UPDATE книга SET Автор = 10 WHERE КодКн=8; Указали в таблице книга недостающий код писателя.
|