Структура таблиц и схема данных

Автор: Пользователь скрыл имя, 24 Сентября 2011 в 16:51, контрольная работа

Описание работы

Страховой кампанией заключается договоры страхования со страхователями, причем с одним страхователем может быть заключено несколько договоров, а каждый отдельный договор заключается только с одним страхователем. Договоры страхования оформляются менеджерами (одним менеджером может быть оформлено множество договоров, но каждый договор оформляется только одним менеджером).

Работа содержит 1 файл

выставка-продажа картин.docx

— 258.20 Кб (Скачать)
 
 
 

Таблица 1.8.

Таблица «Продажи» 

Выставка Произведение Покупатель
1 Выставка1 Произведение2 Покупатель1
2 Выставка2 Произведение3 Покупатель2
3 Выставка2 Произведение1 Покупатель3
4 Выставка1 Произведение4 Покупатель3
7 Выставка1 Произведение6 Покупатель6
8 Выставка3 Произведение5 Покупатель1
9 Выставка2 Произведение9 Покупатель8
10 Выставка1 Произведение7 Покупатель10
11 Выставка3 Произведение12 Покупатель8

1.4 Создание запросов

 

Запрос на выборку с группировкой: Какой автор имеет наибольший успех?

Вначале составляем запрос определяющий количество выставок каждого автора.

Фотография конструктора запроса на выборку с группировкой представлена на рис 1.5.

Рис.1.5. Фотография конструктора запроса на выборку 

Текст запроса  на языке SQL имеет следующий вид:

SELECT Художники.Автор, Count(Выставка.Выставка) AS [Count-Выставка]

FROM Художники INNER JOIN ([Произведения искусств] INNER JOIN (Выставка INNER JOIN Продажи ON Выставка.КодВыставки = Продажи.КодВыставки) ON [Произведения искусств].КодПроизведения = Продажи.КодПроизведения) ON Художники.КодАвтора = [Произведения искусств].КодАвтора

GROUP BY Художники.Автор

ORDER BY Художники.Автор;

Результаты выполнения запроса на выборку представлены  в таблице 1.9.

Таблица 1.9

Результаты  выполнения запроса на выборку

Автор Выставка
Автор1 3
Автор3 2
Автор4 2
Автор5 2
 

Далее строим запрос, определяющий  автора с наибольшим успехом.

Фотография конструктора запроса на выборку с группировкой и статистической функции SQL представлена на рисунке 1.6.

Рис.1.6. Фотография конструктора запроса на выборку 

Выражение Результаты  отбора
(select max( [Выставка]) from [количество выставок]) Отбор по полю «Выставка», количество которых максимальна
 

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

Действие Место ввода выражения
Определение условия отбора для запросов на выборку, перекрестных запросов или запросов на изменение, а также для расширенных  фильтров Ячейка Условие отбора в бланке запроса или в расширенном фильтре.
 

Предложение WHERE

Определяет, какие  записи из таблиц, перечисленных в  предложении FROM, следует включить в результат выполнения инструкции SELECT, UPDATE или DELETE.

Синтаксис

SELECT списокПолей  (При выполнении этой операции ядро базы данных находит указанную таблицу или таблицы, извлекает заданные столбцы, выделяет строки, соответствующие условию отбора, и сортирует или группирует результирующие строки в указанном порядке._    

FROM выражение  (Указывает таблицы или запросы, которые содержат поля, перечисленные в инструкции SELECT.)    

WHERE условиеОтбора  (отбирает записи, соответствующие условиям, перечисленным в предложении WHERE. Если не задавать предложение WHERE, запрос возвращает все строки таблицы.)

Инструкция SELECT, содержащая предложение WHERE, состоит  из трех частей:

Элемент Описание
списокПолей Имена одного или  нескольких полей, из которых отбираются данные, вместе с псевдонимами, предикатами отбора (ALL, DISTINCT, DISTINCTROW или TOP) и другими элементами инструкции SELECT.
выражение Имена одной  или нескольких таблиц, из которых  отбираются данные.
условиеОтбора Выражение, которому должны удовлетворять записи, включаемые в результат выполнения запроса.
 

Текст запроса  на языке SQL имеет следующий вид: 

SELECT [количество выставок].Автор, [количество выставок].Выставка

FROM [количество выставок]

WHERE ((([количество выставок].Выставка)=(select max( [Выставка]) from [количество выставок])));

Результаты выполнения запроса на выборку представлены  в таблице 1.10. 

Таблица 1.10

Результаты  выполнения запроса на выборку 

Автор Выставка
Автор1 3
 

Запрос на выборку с параметром: Кто приобрел данный шедевр?

Фотография конструктора запроса на выборку  представлена на рисунке 1.7

 

Рис.1.7. Фотография конструктора запроса на выборку 

Текст запроса  на языке SQL имеет следующий вид:

SELECT Покупатели.Покупатель, [Произведения искусств].Произведение

FROM [Произведения искусств] INNER JOIN (Покупатели INNER JOIN Продажи ON Покупатели.Кодпокупателя = Продажи.КодПокупателя) ON [Произведения искусств].КодПроизведения = Продажи.КодПроизведения

WHERE ((([Произведения искусств].Произведение) Like [Введите произведение]));

Вводим в ячейку строки Условие отбора текст - Like [Введите произведение]

Фотография ввода  значения параметра представлена на рисунке 1.8.

Рис.1.7. Фотография ввода значения параметра 

Результаты выполнения запроса на выборку, представлены  в таблице 1.11. 
 

Таблица 1.11

Результаты  выполнения запроса на выборку

Покупатель Произведение
Покупатель3 Произведение1
 
 

Вычислить прибыль каждого  художника, если известно, что 30% идет в пользу выставки.

Фотография конструктора запроса на выборку  представлена на рисунке 1.9. 

 

Рис.1.9. Фотография конструктора запроса на выборку

Текст запроса  на языке SQL имеет следующий вид:

SELECT Художники.Автор, Sum([Стоимость]-[Стоимость]*0.3) AS Прибыль

FROM Художники INNER JOIN ([Произведения искусств] INNER JOIN (Выставка INNER JOIN Продажи ON Выставка.КодВыставки = Продажи.КодВыставки) ON [Произведения искусств].КодПроизведения = Продажи.КодПроизведения) ON Художники.КодАвтора = [Произведения искусств].КодАвтора

GROUP BY Художники.Автор

ORDER BY Художники.Автор;

Результаты выполнения запроса на выборку представлены  в таблице 1.12. 

Таблица 1.12

Результаты  выполнения запроса на выборку 

Автор Прибыль
Автор1 294 700,00р.
Автор3 185 500,00р.
Автор4 203 000,00р.
Автор5 195 300,00р.
 

Запрос на выборку  с параметром: Где и когда можно купить пейзаж?

Фотография конструктора запроса на выборку  представлена на рисунке 1.9.

Рис.1.9. Фотография конструктора запроса на выборку

Текст запроса  на языке SQL имеет следующий вид:

SELECT Категории.категории, Выставка.Выставка, Выставка.Дата, [Место проведения].[Место проведения]

FROM (Категории INNER JOIN ([Место проведения] INNER JOIN Выставка ON [Место проведения].КодМеста = Выставка.[Код Места]) ON Категории.КодКатегории = Выставка.КодКатегории) INNER JOIN [Произведения искусств] ON Категории.КодКатегории = [Произведения искусств].КодКатегории

GROUP BY Категории.категории, Выставка.Выставка, Выставка.Дата, [Место проведения].[Место проведения]

HAVING (((Категории.категории)="пейзаж"));

В условии отбора для поля «Категории» в кавычках вводим пейзаж

Результаты выполнения запроса на выборку представлены  в таблице 1.13.

Таблица 1.13

Результаты  выполнения запроса на выборку

Вид искусства Выставка Дата Место проведения
Пейзаж Выставка1 15.05.2009 ВВЦ, Москва

Информация о работе Структура таблиц и схема данных