Практическая работа Работа с готовой таблицей Откройте базу данных Учебники odb
Скачать 0.84 Mb.
|
И нформатика, 11 класс К.Ю. Поляков, Е.А. Еремин Базы данныхПрактические работыПрактическая работа № 0. |
Страна | Транспорт | Цена |
Швеция | паром | 9000 р. |
Германия | автобус | 15700 р. |
Греция | самолёт | 23000 р. |
Норвегия | автобус | 8000 р. |
Германия | самолёт | 19000 р. |
Выбор данных и сортировка
Создайте новый запрос в режиме SQL3
SELECT * FROM "Туры"
и выполните его. Посмотрите на результат.
Этот оператор выберет все поля (*) всех записей из таблицы «Туры».
Вместо * можно указать через запятую список нужных полей:
SELECT "Страна", "Цена" FROM "Туры"
Проверьте результат выполнения этого запроса.
Чаще всего нужно выбрать только записи, удовлетворяющие некоторому условию отбора. Для этого используется ключевое слово WHERE, после которого стоит условие:
SELECT * FROM "Туры" WHERE "Страна" = 'Норвегия'
Проверьте работу этого оператора.
Составьте запрос, который выбирает из таблицы «Туры» значения полей «Страна», «Транспорт» и «Цена» для всех автобусных туров:
Ответ:
Составьте запрос, который выбирает из таблицы «Туры» значения всех полей для туров c ценой меньше 10000 руб:
Ответ:
Для того, чтобы отсортировать данные по некоторому полю, в запросе после ключевых слов ORDER BY (англ. «упорядочить по») указывают название этого поля:
SELECT * FROM "Туры" ORDER BY "Цена"
Проверьте работу этого запроса.
Если в конце предыдущего запроса добавить слово DESC (англ. «descending» – нисходящий), сортировка выполняется в обратном порядке.
Составьте запрос, который выбирает из таблицы «Туры» значения всех полей для туров c ценой больше 10000 руб. и сортирует результаты по убыванию цены:
Ответ:
В запросах можно использовать стандартные функции. Например, функция MIN определяет минимальное значение заданного поля среди всех записей:
SELECT MIN("Цена") FROM "Туры"
Результат этого запроса – одно число.
Составьте запрос, который находит минимальную цену для туров в Норвегию:
Ответ:
Результаты запросов можно использовать в других запросах – получается вложенный запрос. Например, запрос
SELECT * FROM "Туры" WHERE "Цена" =
(SELECT MIN("Цена") FROM "Туры")
вернет данные о самом дешевом туре.
Составьте запрос, который находит тур минимальной цены на самолёте:
Ответ:
Изменение и удаление данных
Для изменения записей используется оператор UPDATE. Запрос, приведенный ниже, увеличивает цены всех туров на 10%:
UPDATE "Туры" SET "Цена" = "Цена"*1.1
Проверьте, что данные в таблице «Туры» действительно изменились.
Запишите запрос, который вернёт цены в исходное состояние, и выполните его.
Ответ:
Авиакомпании в данный момент представляют скидку на билеты, так что цены всех туров на самолётах составляют 80% от исходных. Составьте и выполните соответствующий запрос.
Ответ:
Какая стоимость получилась у тура в Грецию?
Ответ:
Скопируйте таблицу «Туры», назвав копию «Туры2». Удалите все туры в Германию с помощью запроса
DELETE FROM "Туры2" WHERE "Страна" = 'Германия'
Проверьте, что данные в таблице «Туры2» действительно изменились.
Удалите таблицу «Туры2», которая больше не нужна, с помощью запроса
DROP TABLE "Туры2"
Попытайтесь открыть таблицу «Туры2». Загрузить базу данных заново и убедитесь, что таблица «Туры2» действительно удалена.
Оператор SCRIPT позволяет сохранить базу данных в текстовом формате для её переноса в другую СУБД. Сохраните базу с помощью запроса
SCRIPT 'имя файла'
Откройте полученный файл в текстовом редакторе и изучите его.