§ 24. Использование SQL для построения запросов
Упражнения
1. Создайте базу данных «Туры.accdb».
1. Создайте новую пустую базу данных и введите ее имя.
2. Создайте таблицу базы данных с помощью SQL-запроса.
3. Введите следующую команду для создания таблицы:
CREATE TABLE Туры (
Код INTEGER NOT NULL PRIMARY KEY,
Страна VARCHAR(50) NOT NULL,
Транспорт VARCHAR(20) NOT NULL,
Цена MONEY NOT NULL)
4. Выполните эту команду. Проверьте, что таблица «Туры» действительно создана.
2. Добавьте в таблицу «Туры» записи (по одной):
INSERT INTO Туры
VALUES (1, 'Австрия', 'автобус', 800);
INSERT INTO Туры
VALUES (2, 'Норвегия', 'самолет', 1500);
Аналогично добавьте в таблицу еще несколько записей:
Код |
Страна |
Транспорт |
Цена |
3 |
Швеция |
паром |
900 р. |
4 |
Германия |
автобус |
700 р. |
5 |
Греция |
самолет |
1200 р. |
6 |
Норвегия |
автобус |
800 р. |
7 |
Германия |
самолет |
1500 р. |
3. Выполните и сохраните запросы на выборку данных из таблицы «Туры»:
1. Отобразить все данные таблицы:
SELECT * FROM Туры
Посмотрите на результат.
2. Для всех записей отобразить только поля «Страна» и «Цена»:
SELECT Страна, Цена FROM Туры
3. Отобразить записи, содержащие данные о турах в Норвегию:
SELECT * FROM Туры WHERE Страна LIKE Норвегия
4. Составьте, выполните и сохраните запросы на выбор из таблицы «Туры»:
1. Значения полей «Страна», «Транспорт» и «Цена» для всех автобусных туров.
2. Составьте и выполните запрос, который выбирает из таблицы «Туры» значения всех полей для туров c ценой меньше 1000 р.
5. Проверьте работу запроса:
SELECT * FROM Туры ORDER BY Цена
Добавьте в конце предыдущего запроса ключевое слово DESC. Что изменилось? Сохраните результат.
6. Составьте, выполните и сохраните запросы на выбор из таблицы «Туры»:
1. Значения всех полей для туров c ценой больше 1000 р. и сортирует результаты по убыванию цены.
2. Минимальной цены для туров в Норвегию.
3. Тура с максимальной ценой на самолет.
7. Составьте, выполните и сохраните запросы для таблицы «Туры»:
1. Увеличение цены всех туров на 10 %.
2. Реализация скидки на билеты, так что цены всех туров на самолетах составляют 80 % от исходных.
8. Скопируйте таблицу «Туры», назвав копию «Туры2». Составьте и выполните запрос на удаление всех туров в Германию. Проверьте, что данные в таблице «Туры2» действительно изменились. Удалите таблицу «Туры2», которая больше не нужна, с помощью запроса.
9. Откройте базу данных «Аренда автомобилей.accdb». Составьте, выполните и сохраните запросы.
- Выбрать все автомобили в порядке года выпуска. Для тех, у которых год выпуска одинаковый — по убыванию стоимости аренды.
- Найти автомобили с объемом двигателя >3.
- Найти автомобили красного цвета.
- Найти автомобили с объемом двигателя =2 и арендой не более 300.
- Вывести информацию об автомобилях, год выпуска которых между 2000 и 2010.
- Вывести всех арендаторов, проживающих на улице Пономарева.
- Для каждого автомобиля определить стоимость техосмотра, которая составляет 70 % от стоимости аренды.
- Используя группировку, получить итоговую сумму аренды для каждой группы автомобилей с одинаковым видом топлива.
- Найти минимальную, максимальную и среднюю стоимость аренды для автомобилей с одинаковым типом кузова.
10. Выполните запрос на поиск всех взятых в аренду автомобилей.
SELECT *
FROM Автомобили
WHERE Код IN (SELECT ‘Автомобили_Код’ FROM Аренда);
11. Найдите всех арендаторов, которые не брали ни одну машину в аренду.