Автор работы: Пользователь скрыл имя, 15 Января 2012 в 11:25, контрольная работа
Задача 1.12
Кому из финских клиентов были оформлены заказы на поставку товаров со скидкой с начала текущего года?
5. Подготовка контрольного примера
Процедура реляционной обработки данных выполняется вручную. Представляем значение исходных данных в таблицах.
Все представленные ниже таблицы являются фрагментами:
Клиенты (фрагмент)
| Клиенты | |||
| Код клиента | Название | Адрес | Город |
| ALFKI | Alfreds Futterkiste | Obere Str. 57 | Берлин |
| ANATR | Ana Trujillo Emgarelados | Avda. de la Constitucion 2222 | Мехико |
| BLAUS | Blauer See Delikatessen | Forsterstr. 57 | Мангейм |
| BLONP | Blondel pere et fils | 24, place Kleber | Страсбург |
Заказы (Фрагмент)
| Заказы | ||
| Код заказа | Клиент | Дата размещения |
| 10952 | Alfreds Futterkiste | 16-03-2005 |
| 10759 | Ana Trujillo Emgarelados | 11-01-2005 |
| 10265 | Blondel pere et fils | 11-01-2005 |
| 11058 | Blauer See Delikatessen | 29-04-2004 |
Результат выполнения запроса
Результат выполнения
реляционной операции произведения
(фрагмент)
| Код клиента | Название | Адрес | Город | Код заказа | Клиент | ДатаРазмещения |
| ALFKI | Alfreds Futterkiste | Obere Str. 57 | Берлин | 10952 | Alfreds Futterkiste | 16-03-2005 |
| ANATR | Ana Trujillo Emgarelados | Avda. de la Constitucion 2222 | Мехико | 10759 | Ana Trujillo Emgarelados | 11-01-2005 |
| BLAUS | Blauer See Delikatessen | Forsterstr. 57 | Мангейм | 10265 | Blondel pere et fils | 11-01-2005 |
| BLONP | Blondel pere et fils | 24, place Kleber | Страсбург | 11058 | Blauer See Delikatessen | 29-04-2004 |
Результат выполнения операции селекции (фрагмент)
| Клиенты по месяцам | ||||||
| Название | Адрес | Город | Область | Индекс | Страна | Дата размещения |
| Ana Trujillo Emgarelados | Avda. de la Constitucion 2222 | Мехико | 050221 | Мексика | 11-01-2005 | |
| Blondel pere et fils | 24, place Kleber | Страсбург | 67000 | Франция | 11-01-2005 | |
| Alfreds Futterkiste | Obere Str. 57 | Берлин | 12209 | Германия | 16-03-2005 | |
Для получения в автоматизированном режиме таблицы с результатом выполнения операции произведения используется следующий запрос:
SELECT Клиенты*, Заказы*
FROM Клиенты, Заказы
Для получения в автоматизированном режиме таблицы с результатом выполнения операции соединения используется следующий запрос:
SELECT Клиенты*, Заказы*
FROM Клиенты INNER JOIN Заказы ON Клиенты.КодКлиента
= Заказы.КодКлиента
Для получения в автоматизированном режиме таблицы с результатом выполнения операции селекции используется следующий запрос:
SELECT Клиенты*, Заказы*
FROM Клиенты INNER JOIN Заказы ON Клиенты.КодКлиента
= Заказы.КодКлиента WHERE WHERE (((Заказы.ДатаРазмещения)>#1/
Для получения в автоматизированном режиме таблицы с результатом выполнения операции проекции используется следующий запрос:
SELECT DISTINCTROW Клиенты.Название,
Клиенты.Адрес, Клиенты.Город,
FROM Клиенты INNER JOIN Заказы ON Клиенты.КодКлиента = Заказы.КодКлиента
WHERE (((Заказы.ДатаРазмещения)>#1/
ORDER BY Заказы.ДатаРазмещения;
6. Формирование запроса
Поскольку между
таблицами Заказы
и Клиенты существует связь «один-ко-многим»,
для исключения повторяющихся строк необходимо
использовать следующую инструкцию
SELECT DISTINCTROW
Полный вариант SQL-запроса:
SELECT DISTINCTROW Клиенты.Название,
Клиенты.Адрес, Клиенты.Город,
FROM Клиенты INNER JOIN Заказы ON Клиенты.КодКлиента = Заказы.КодКлиента
WHERE (((Заказы.ДатаРазмещения)>#1/
ORDER BY Заказы.ДатаРазмещения;
Задача 2.10
Получить сведения
о заказах клиентов из Украины на
определенный период текущего года.
Решение.
1. Определение состава входного сообщения
Исходя из анализа информационной потребности, определяем состав и структуру требуемого сообщения S(Заказы клиентов из Украины):
S(Клиенты.НавзаниеКомпании, Клиенты.Страна, [Заказы на работы].НомерЗаказа, [Заказы на работы].ИзготовительИМодель, [Заказы на работы].СерийныйНомер).
| НазваниеКомпании | Страна | НомерЗаказа | ИзготовительИМодель | СерийныйНомер |
2. Разработка модели процесса
Определяем состав полей и таблиц, используемых в нашем запросе. Представляем в графическом виде обобщенную функционально-технологическую схему задачи.
Поскольку сведения о клиентах, находятся в таблице Клиенты, сведения о дате заказа, в таблице Заказы на работы в запросе необходимо использовать следующие таблицы: Клиенты, Заказы на работы. Таблицы Клиенты и Заказы на работы связанны между собой по полю «КодКлиента», причем Клиенты является главной, а Заказы на работы подчиненной. Эти таблицы образуют часть схемы данных, используемую для решения задачи, поэтому других таблиц на входе процесса нет.
На выходе процесса
представлено сообщение с определенной
в предыдущем пункте структурой.
Обобщенная
функционально-технологическая
3. Общее описание процесса решения задачи
Получения выходного сообщения позволит уменьшить трудозатраты на выборку сведений о заказах клиентов из Украины на определенный период текущего года. Получение информации всеми потребителями должно положительно повлиять на результаты работы компании.
С позиции потребителя-
4.
Представление подсхемы
базы данных
| Клиенты |
| КодКлиента |
| НазваниеКомпании |
| ИмяКонтакта |
| ФамилияКонтакта |
| АдресВыставленияСчета |
| Город |
| ОбластьКрайРеспублика |
| ПочтовыйИндекс |
| Страна |
| ДолжностьПолучателя |
| НомерТелефона |
| Факс |
| Заказы на работы |
| КодЗаказа |
| КодКлиента |
| КодСотрудника |
| НомерЗаказа |
| ДатаПолучения |
| ДатаНазначения |
| ИзготовительИМодель |
| СерийныйНомер |
| ОписаниеНеисправности |
| ДатаЗавершения |
| Выдано |
| НалоговаяСтавка |
Таблица Заказы
на работы имеет простой ключ «КодЗаказа»,
таблица Клиенты
– простой ключ «КодКлиента». В отношении
между таблицами Заказы
на работы и Клиенты,
Клиенты является главной, а Заказы
на работы подчиненной. Тип связи –
«один-ко-многим». Связь по полю «КодКлиента».
Значение поля «КодКлиентаТаблице Заказы
на работы обновляются автоматически
при изменениях значения соответствующего
поля в главной таблице.
5. Подготовка контрольного примера
Процедура реляционной обработки данных выполняется вручную. Представляем значение исходных данных в таблицах.
Все представленные ниже таблицы являются фрагментами:
| Клиенты | ||
| КодКлиента | Страна | НавзаниеКомпании |
| 1 | Россия | Немироф |
| 2 | Китай | Лаодзы |
| 3 | Россия | Фауст |
| 4 | Украина | Победа |
| Заказы на работы | |||||
| КодЗаказа | КодКлиента | ДатаНазначения | НомерЗаказа | ИзготовительИМодель | СерийныйНомер |
| 1 | 1 | 12.08.2005 | 123 | Китай | 843456 |
| 2 | 1 | 12.05.2005 | 56 | Япония | 456787 |
| 3 | 2 | 24.05.2004 | 456 | Корея | 456456 |
| 8 | 3 | 15.03.2005 | 978 | Китай | 12352645 |
Результат выполнения запроса
| Заказы клиентов из Украины | ||||
| НавзаниеКомпании | Страна | НомерЗаказа | ИзготовительИМодель | СерийныйНомер |
| Победа | Украина | 123 | Китай | 843456 |
| Победа | Украина | 56 | Япония | 456787 |
Для получения в автоматизированном режиме таблицы с результатом выполнения операции произведения используется следующий запрос:
SELECT Клиенты*, Заказы
на работу* FROM Клиенты, Заказы на работу
Для получения в автоматизированном режиме таблицы с результатом выполнения операции соединения используется следующий запрос:
SELECT Клиенты*, Заказы
на работу* FROM Клиенты INNER JOIN [Заказы на
работы] ON Клиенты.КодКлиента = [Заказы
на работы].КодКлиента
Для получения в автоматизированном режиме таблицы с результатом выполнения операции селекции используется следующий запрос:
Информация о работе Контрольная работа по "Информационные системы в экономике"