Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБЫ ПО БАЗАМ ДАННЫХ.doc
Скачиваний:
46
Добавлен:
01.06.2015
Размер:
268.29 Кб
Скачать

Лабораторная работа №5 построение простейших запросов на выборку информации

Цель занятия

Изучение средств языка SQLпо созданию запросов на выборку информации. Практическая реализация простейших запросов-выборок.

Постановка задачи

В соответствии с индивидуальным вариантом реализовать на языке SQL не ме-нее восьми различных запросов на выборку информации для базы данных, разрабо-танной в рамках практического занятия №4. Совокупность запросов обязательно должна содержать следующие конструкции SQL:

алогические операции;

бключевое словоDISTINCT;

впредикатBETWEEN;

гпредикатLIKE;

дпредикатIN.

Ход работы

Запрос, который выводит полную информацию о всех железнодорожных вокзалах:

SELECT *

FROM [Железнодорожный вокзал];

Запрос, который показывает фамилию, имя и контактный телефон машинистов в возрасте от 25 до 40 лет:

SELECT Фамилия,

Имя,

[Контактный телефон]

FROM Сотрудник

WHERE (Должность="Машинист") and

([Дата рождения] BETWEEN #01/01/1968# and #12/31/1983#);

Запрос, который показывает фамилию и имя пассажиров серия паспорта которых начинается на «28» или «29» купивших билет 24 сентября 2000 года:

SELECT Фамилия,

Имя

FROM Пассажир

WHERE ([№ и серия паспорта] Like "######*28##*") Or

([№ и серия паспорта] Like "######*29##*") And

([Дата покупки билета]=#9/24/2000#);

Запрос, который показывает должности, оклад которых не меньше 5000:

SELECT Должность

FROM [Справочник окладов]

WHERE Оклад >= 5000;

Запрос, который показывает всю информацию о маршрутах движения поездов 19октября 2008 года отправляющихся с 3ей платформы:

SELECT *

FROM [Маршрут движения]

WHERE ([Дата отправления] = #10/19/2008#) and

([№ платформы] = 3);

Запрос, который показывает всю информацию о пассажирах купивших билеты 10 октября 2008 года или 15 октября 2008 года:

SELECT *

FROM Пассажир

WHERE [Дата покупки билета] IN (#10/10/2008#,#10/15/2008#);

Запрос, который показывает название и адрес вокзала с телефоном начинающимся на «7» и фамилией директора на «И» или «П»:

SELECT [Полное название вокзала],

Адрес

FROM [Железнодорожный вокзал]

WHERE (Телефон Like "7*") And

(Директор Like "И*") Or

(Директор Like "П*");

Запрос, который показывает всю информацию о мужчинах чьё имя начинается на «С»:

SELECT *

FROM Сотрудник

WHERE (Отчество LIKE "*вич") and

(Имя LIKE "С*");

Лабораторная работа №6 использование группировки и упорядочения данных

Цель занятия

Изучение возможностей языка SQL для создания параметрических запросов-выборок, а также запросов с использованием группировки и упорядочения информации. Практическая реализация соответствующих запросов.

Постановка задачи

В соответствии с индивидуальным вариантом создать с помощью языка SQL не менее шести различных запросов для базы данных, разработанной в рамках практи-ческого занятия №4. Совокупность запросов должна содержать:

апараметрические запросы;

бзапросы, использующие группировку данных;

взапросы, осуществляющие различные способы упорядочения данных.

Ход работы

Запрос, который показывает фамилию, имя и контактный телефон сотрудников занимающих должность введенную с клавиатуры:

SELECT Фамилия, имя, [Контактный телефон]

FROM Сотрудник

WHERE Должность=[Введите должность]

ORDER BY Фамилия;

Запрос, который по введенным с клавиатуры названию маршрута и дате маршрута показывает полную информацию об этом маршруте:

SELECT *

FROM [Маршрут движения]

WHERE [Название маршрута]=[введите название маршрута] AND [Дата отправления]=[введите дата отправления];

Запрос, который показывает самого старого сотрудника по каждой должности:

SELECT MIN([дата рождения]) AS [МАХ возраст], должность

FROM Сотрудник

GROUP BY Должность;

 Запрос, который тройку пассажиров купивших билет последними:

SELECT TOP 3 [Личный №], имя, фамилия, [Дата покупки билета]

FROM Пассажир

ORDER BY [Дата покупки билета];

 Запрос, который показывает среднюю цену билетов для всех вокзалов в алфавитном порядке:

SELECT [Полное название вокзала],

AVG([стоимость билета]) AS [средняя стоимость биллета]

FROM [маршрут движения]

GROUP BY [Полное название вокзала]

ORDER BY [Полное название вокзала];

 Запрос, который название, адрес и телефон вокзала директор которого вводится с клавиатуры:

SELECT [Полное название вокзала], адрес, телефон

FROM [Железнодорожный вокзал]

WHERE Директор=[введите директора];