Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Тема 3. 2. Создание запросов.
1. Основы языка SQL 2. Функции запросов и их создание. 3. Запросы на выборку данных из таблицы 4. Запросы к многотабличным базам данных
После того как. БД создана, ее можно использовать в качестве информационного справочника. В этом и состоит основное назначение всякой информационной системы. Действия, выполняемые над информацией, хранящейся в базе данных, называются манипулированием данными. К ним относятся выборка данных по некоторым условиям, сортировка данных, обновление, удаление и добавление данных. Выполнение этих действий производится с помощью запросов. Запрос — это команда на выполнение определенного вида манипулирования данными. В различных СУБД чаще всего используются два основных языка описания запросов: 1. язык QBE (Query by Example) — язык запросов по образцу; 2. SQL (Structured Query Language; — структурированный язык запросов. Язык SQL предназначен для выполнения операций над таблицами (создание, удалений, изменение структуры) и над данными, хранящимися в таблицах. (выборка, изменение, добавление, удаление, сортировки), Наиболее часто используемой командой SQL является команда выборки. Для осуществления выборки из однотабличной БД формат команды выборки следующий:
SELECT <список выводимых полей> FROM <имя таблицы> WHERE <условие выбора> ORDER BY <ключ сортировки> [DESC]
Не все составляющие этой команды являются обязательными. Могут отсутствовать условия выбора и параметры сортировки. Кроме того, ключей сортировки может быть несколько. Тогда они записываются в порядке приоритетов: первичный, вторичный и т.д. Сортировка может производиться по возрастанию и по убыванию значения ключа. При отсутствии опции DECS сортировка производится «по возрастанию», при наличии — «по убыванию».
Пример 4.1. Используя таблицу «Ученики», получить таблицу, содержащую фамилии, имена и адреса учеников, родившихся до 2000 г. Сортировать таблицу в алфавитном порядке то фамилиям
Запрос на языке SQL имеет следующий вид: SELECT Ученики.ФАМИЛИЯ, Ученики. ИМЯ, Ученики.АДРЕС FROM Ученики WHERE (((Ученики. ДАТА_РОЖД) <#l/l /2000#)) ORDER BY Ученики. ФАМИЛИИ;
В итоговую таблицу будет выводиться три поля: фамилия, имя и адрес ученика. В запросах указываются комбинированные имена полей:
<имя таблицы>.<имя поля>
Условие выбора обозначает поиск только тех учеников из таблицы, дата рождения которых меньше (раньше), чем 1 января 2000 г. Итоговая таблица будет отсортирована в алфавитном порядке фамилий учеников. Этот же запрос можно сформировать, используя Конструктор запросов Access. После запуска Конструктора откроется окно «Добавление таблицы». Следует выделить название таблицы «Ученики» и выполнить команду Добавить (рис. 4.10).
SELECT Успеваемость. НОМЕР_УЧ, Успеваемость.ПРЕДМЕТ, Успеваемость.ГОД FROM Успеваемость WHERE ((Успеваемость. ПРЕДМЕТ)= '"математика") AND ((Успеваемость. ГОД) =5)) ORDER BY Успеваемость.НОМЕР_УЧ; В этой команде используется логическая операция AND (И), которая связывает между собой два условия выборки: ПРЕДМЕТ="математика" И ГОД=5. Такое условие выбора будем называть сложным условием. Информация по запросу будет выбрана из тех записей таблицы, в которых одновременно выполняются два эти условия. эти две таблицы связаны между собой через общее ключевое поле НОМЕР_УЧ. Графическое изображение связи между таблицами называется схемой базы данных. Схему можно отобразить на экране, отдав команду Работа с базами данных — Схема данных. В нашем случае выведется изображение, представленное на рис. 4.15,
Пример 4.3. Используя связанные таблицы «Ученики» и «Успеваемость», получить фамилии и имена учеников, имеющих пятерку по математике за год.
Команда на SQL имеет следующий вид; SELECT Ученики.ФАМИЛИЯ, Ученики.ИМЯ, Успеваемость.ПРЕДМЕТ, Успеваемость.ГОД FROM Ученики INNER JOIN Успеваемость ON Ученики.НОМЕР_УЧ = Успеваемость.НОМЕР_УЧ WHERE ((Успеваемость. ПРЕДМЕТ) ="математика") AND ((Успеваемость.ГОД)=5)) ORDER BY Ученики. ФАМИЛИЯ
По этому запросу в итоговую таблицу выводится два поля ил таблицы «Ученики» и два поля из таблицы "Успеваемость». Здесь также содержится информация о том, что эти две таблицы связаны между собой (Ученики INNER JOIN Успеваемость) через ПОЛЯ НОМЕР_УЧ (ON Ученики.НОМЕР_УЧ = Успеваемость.Н0МЕР_УЧ). В результате выполнения запроса получится таблица, представленная на рис. 4.16.
Пример 4. Требуется подучить сведения о том. какие ученики и по каким предметам имеют годовую оценку 5. Эти сведения нужно сгруппировать по предметам, расположив их в алфавитном порядке
SELECT Успеваемость. ПРЕДМЕТ, Ученики.ФАМИЛИЯ, Ученики. ИМЯ FROM Ученики INNER JOIN Успеваемость ON Ученики. НОМЕР_УЧ = Успеваемость.НОМЕР_УЧ WHERE (((Успеваемость. ГОД) =5)) ORDER BY Успеваемость.ПРЕДМЕТ, Ученики. ФАМИЛИЯ;
Этот же запрос в Конструкторе представлен на рис. 4.18. В результате выполнения запроса получим таблицу (рис. 4.19). В этом запросе группировка результата по предметам получилась благодаря тому, что поле ПРЕДМЕТ было выбрано в качестве первичного ключа сортировки, а поле ФАМИЛИЯ — в качество вторичного ключа. В таком случае отбираемые записи сначала сортируются по первичному ключу. Если же у нескольких записей значения первичного ключа совпадают, тогда их порядок будет определяться сортировкой по вторичному ключу.
|
||||||
Последнее изменение этой страницы: 2021-04-13; просмотров: 83; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.83.150 (0.012 с.) |