Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Структурированный язык запросов (SQL)

Многотабличные запросы

Все возможности запросов, основанных на одной таблице, реализуемы и при объединении данных из нескольких связанных таблиц. Связь между базовыми таблицами можно задать с помощью первичных ключей, либо командами Сервис®Схема данных. Все остальные действия при создании запросов точно такие же, как и рассмотренные ранее.

Пример 1. Из таблицы ПОСТАВЩИКИ выбрать записи, где ДатаПоставки – 2006 год. Окно конструктора запросов при этом будет иметь вид (рис.10.2).

10.2. Запрос на выборку для решения задачи (пример 1)

Пример 2. Составить запрос на удаление: из таблицы ТОВАРЫ удалить записи, где Стоимость товара меньше 1000. Для этого вызывается таблица ТОВАРЫ, перетаскивается символ * и в строке Удаление выбирается Из (см. первый столбик рис.10.3). Во второй столбец, перетаскивается имя поля, для которого устанавливаются Условия.

 

Рис.10.3. Запрос на удаление записей

Запрос, который создается с помощью бланка QBE, будет храниться в компьютере в виде директивы SQL, называемой сообщением. При работе с Access сам язык SQL от нас обычно скрыт. Например, все операции с запросами выполняются с использованием SQL, но при этом мы видим на экране лишь бланк запроса. Сообщения SQL и окно бланка запроса связаны динамически: любое изменение в одном из них автоматически приводит к изменению в другом. Переход от одного режима к другому осуществляется через пункты меню Вид.

При создании большинства запросов знание языка SQL не требуется. Достаточно для этого бланка QBE. Однако, нередко легче внести изменения в режиме SQL непосредственно, чем открывать и редактировать форму отдельного запроса каждый раз при изменении набора данных. Кроме того, когда нужно создавать подчиненные запросы, результаты которых используются в качестве условий сравнения в других запросах, необходимо знание языка SQL.

Cообщение SQL состоит из ключевых слов, а также идентификаторов и выражений Access. Наиболее важные ключевые слова в SQL:

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

distinct – исключает повторяющиеся значения из поля в наборе записей, которые найдены с помощью SQL;

distinctrow – удаляет дублирующие записи из выборки;

from – указывает, какая таблица (или таблицы) содержат нужные нам поля;

join - обозначает связь между записями, содержащимися в разных таблицах;

where – обозначает условия выбора, которые должны использоваться при выборе записей для включения их в выборку;

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

group by – означает, что будет возвращена одна запись для каждого отдельного значения в указанном поле. Если group by включается в select, список выбора должен включать функции avg, count, sum и др.

; -символ, заканчивающий любое SQL сообщение.

При вводе условий выбора записей можно использовать знаки отношений, логические операции and и or, операторы: between, in, like.

Для иллюстрации синтаксиса языка SQL воспользуемся таблицей Продажи ”. Пример 1. Записать сообщение SQL, для заполнения поля “Стоимость”, значение которого вычисляется по формуле: Стоимость = Продано * Цена_Ед

Select distinctrow Продажи.Продано,

Продажи.Цена_ед,

[Продано]*[Цена_ед] as Стоимость

from Продажи;

 

Пример 2. Найти записи с датой заказа в марте месяце.

select *

from Продажи

where month(Дата_заказа) = 3;

Пример 3. Записи таблицы, полученные в примере 2, расположить по возрастанию кода покупателя.

select *

from Продажи

where month (Дата_заказа) = 3

order by Код_покупателя;

Пример 4. Подсчитать стоимость товаров, сделанных каждым покупателем.

select distinctrow .Код_покупателя,

sum ([Продано]*[Цена_ед]) as Стоимость

from Продажи

group by Код_покупателя;

Пример 5. Выбрать записи с датой заказа 31 марта 2006.

select *

from Продажи

where Дата_заказа = #3/31/06#;

Пример 6. Запрос с параметром на выборку по названию кафедры.

select *

from Кафедра

where Название=[Введите название кафедры];

 

<== предыдущая лекция | следующая лекция ==>
Выбор данных из одной таблицы | 
Поделиться с друзьями:


Дата добавления: 2013-12-11; Просмотров: 287; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.