Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы SQL-2012.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.36 Mб
Скачать

Лабораторная работа № 2 выбор и модификация данных из таблицы

Цель работы

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

Содержание отчета

1. Название и цель выполнения работы.

2. Выполнить подготовительную часть.

3. Краткое описание действий по выполнению практической части.

4. Письменные ответы на заданные вопросы.

Подготовительная часть

  1. Дать характеристику следующим понятиям и действиям

  • Синтаксис команды выборки данных на языке SQL с описанием операторов

  • Итоговые функции и правила их использования

  1. Выполнить практическую часть.

Теоритическая часть

Изучить состав, правила и порядок использования ключевых фраз оператора select:

select - описание состава данных, которые следует выбрать по запросу (обязательная фраза);

from - описание таблиц, из которых следует выбирать данные (обязательная фраза);

where - описание условий поиска и соединения данных при запросе;

group by - создание одной строки результата для каждой группы (группой называется множество строк, имеющих одинаковые значения в указанных столбцах);

having - наложение одного или более условий на группу;

order by - сортировка результата выполнения запроса по одному или нескольким столбцам;

into temp - создание временной таблицы, в которую будет осуществлен вывод результатов соответствующего запроса.

Порядок следования фраз в команде select должен соответствовать приведенной выше последовательности.

Практическая часть

Задание 1. Работа с однотабличной базой данных

  1. В режиме Конструктор создайте таблицу «MUSICIANS», состоящую из следующих полей.

Имя поля

Тип данных

Размер поля

Свойства

Описание

ID

Счетчик

Ключевое поле

Уникальный идентификатор музыкальной группы/исполнителя

Name

Текстовый

100

Обязательное поле - Да

Название группы/исполнителя

Birthday

Дата/Время

Формат поля – Длинный формат даты

День рождения/Дата создания

Country

Текстовый

100

Страна

Active

Логический

Выступает сегодня или нет

  1. Создайте форму ввода «Исполнители» с помощью мастера.

  2. Внесите 10 известных исполнителей в базу данных.

  3. Измените внешний вид формы «Исполнители», заменив поясняющий текст перед полями на русские слова (ID – Код, Name – Название, и т.д.)

  4. Создайте отчет «Исполнители» с помощью мастера.

  5. Измените внешний вид отчета «Исполнители», заменив поясняющий текст перед полями на русские слова (ID – Код, Name – Название, и т.д.)

  6. Создание запросов к таблице «MUSICIANS»

Указание.

  • На вкладке Создание нажать кнопку Конструктор запросов

  • В окне Добавление таблицы выберите таблицу «MUSICIANS» и нажмите кнопку Добавить, а затем Закрыть

  • Выберите вид представления запроса Режим SQL (левая верхняя иконка), нажав на стрелочку в кнопке

  1. Составим запрос к базе данных, при выполнении которого будут выдаваться на экран все записи из таблицы MUSICIANS:

SELECT *

FROM MUSICIANS;

где * - обозначает отображение на экране всех колонок(полей) в таблице

Читается этот запрос следующим образом: Выбрать все записи из таблицы MUSICIANS и показать на экран все поля.

Нажмите на кнопку «Запуск» - и посмотрите результат запроса;

Сохраните запрос(Файл/Сохранить как) под именем «Полный список»

  1. Составим запрос к базе данных, при выполнении которого будут выдаваться на экран все российские исполнители:

SELECT * FROM MUSICIANS WHERE COUNTRY = ‘Russia’;

где * - обозначает отображение на экране всех колонок(полей) в таблице,

а WHERE COUNTRY = ‘Russia’ накладывает следующее ограничение на выбираемые записи:

Поле Country в каждой выдаваемой на экран записи должно содержать текст ‘Russia’

Читается этот запрос следующим образом: Выбрать записи из таблицы MUSICIANS, у которых страна ‘Russia’ и показать на экран все поля таблицы.

Нажмите на кнопку «Запуск» - и посмотрите результат запроса;

Сохраните запрос(Файл/Сохранить как) под именем «Список с ограничением»

  1. Составим запрос к базе данных, при выполнении которого будут выдаваться на экран количество российских исполнителей:

SELECT count(*) FROM MUSICIANS WHERE COUNTRY = ‘Russia’;

где функция count(*) вычисляет количество выбранных записей

Читается этот запрос следующим образом: Найти количество записей в таблице MUSICIANS, у которых страна ‘Russia’.

Нажмите на кнопку «Запуск» - и посмотрите результат запроса;

Сохраните запрос(Файл/Сохранить как) под именем «Количество записейР»

  1. Составим запрос к базе данных, при выполнении которого будут выдаваться на экран количество исполнителей в каждой из стран:

SELECT COUNTRY, count(*) FROM MUSICIANS GROUP BY COUNTRY;

где функция count(*) вычисляет количество выбранных записей

GROUP BY – определяет по какому полю осуществлять группировку записей

Читается этот запрос следующим образом: Найти для каждой из стран количество исполнителей (количество записей в таблице MUSICIANS для каждой из стран).

Нажмите на кнопку «Запуск» - и посмотрите результат запроса;

Обратите внимание, что в первом столбце будут стоять страны, а во втором количество исполнителей.

Сохраните запрос(Файл/Сохранить как) под именем «Количество записей»

  1. Составим запрос к базе данных, при выполнении которого будет выдаваться на экран весь список исполнителей, отсортированный по названиям, а в таблице должны быть представлены только поля «Название» и «Страна»:

SELECT NAME, COUNTRY FROM MUSICIANS ORDER BY NAME;

ORDER BY – определяет поле, по которому будет осуществляться сортировка списка

Читается этот запрос следующим образом: Найти для каждой из стран количество исполнителей (количество записей в таблице MUSICIANS для каждой из стран).

Нажмите на кнопку «Запуск» - и посмотрите результат запроса;

Сохраните запрос(Файл/Сохранить как) под именем «Сортировки»;

  1. Изменим запрос таким образом, чтобы на экран выдавался список, отсортированный по стране по возрастанию и названию исполнителя по убыванию:

SELECT NAME, COUNTRY FROM MUSICIANS ORDER BY COUNTRY ASC, NAME DESC;

где DESC говорит о том, что сортировка идет по убыванию, а ASC о том, что сортировка идет по возрастанию

Представленный запрос можно переписать следующим образом:

SELECT NAME, COUNTRY FROM MUSICIANS ORDER BY 2, 1;

где 2 – второй столбец таблицы (NAME,COUNTRY), а 1 – первый столбец, т.е. сначала сортировка результата будет проводиться по второму столбцу, а затем по перовому.

Сохраните запрос под именем «Сортировки2»

Экспорт данных из MS Access в MS Excel

  • Выполните запрос «Полный список»

  • Для экспортирования данных из Access в Excel на вкладке Внешние данные в группе команд Экспорт нажмите кнопку Excel

  • Задайте тип файла «Книга Excel» и имя файла «Полный список»

  • Нажмите кнопку «Ok»

Задачи:

  1. Составить запрос к базе данных, при выполнении которого будет выдаваться на экран список исполнителей (название исполнителя и дата рождения/образования), отсортированный по дате рождения/образования.

Запрос сохранить под названием «Задача 1»

  1. Составить запрос к базе данных, при выполнении которого будет выдаваться на экран список действующих исполнителей, отсортированный по названию.

Запрос сохранить под названием «Задача 2»

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

Запрос сохранить под названием «Задача 3»

  1. Составим запрос к базе данных, при выполнении которого будут выдаваться на экран количество исполнителей, которые начали свои выступления в период с 1990 года по 2000:

Запрос сохранить под названием «Задача 4»

Задание 2 Выполнить запросы к базе данных индивидуального варианта.

Контрольные вопросы:

1. Какую структуру имеет запрос на выборку средствами SQL?

2. Как выполнить сортировку записей в SQL запросе?

3. Что выполняет данный запрос:

SELECT Фамилия, оклад

FROM Сотрудники

WHERE Оклад>5000?

4.Что выполняет данный запрос?

SELECT Код_отдела, SUM(Количество)

FROM Сотрудники

GROUP BY Код_отдела?