Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Завдання 1_1.doc
Скачиваний:
1
Добавлен:
12.09.2019
Размер:
1.37 Mб
Скачать

Insert into Довідник ( [Код матеріалу], [Назва матеріалу] )

SELECT 'AАА-42' AS [Код матеріалу], 'Цемент Ковальской ' AS [Назва матеріалу]

FROM Довідник;

Визначити загальну річну потребу і вартість кожного з будматеріалів починаючи з 2000 р . Запит повинен включати поле «Назва матеріалу»

SELECT Довідник.[Назва матеріалу], [Потреби Будматеріалів].Рік, [Потреби Будматеріалів].Місяць, Sum([Потреби Будматеріалів].Потреба) AS [Sum-Потреба], [Ціна Матеріалу].Ціна, Sum([Потреба]*[Ціна]) AS Вартість

FROM (Довідник INNER JOIN [Потреби Будматеріалів] ON Довідник.[Код матеріалу] = [Потреби Будматеріалів].[Код матеріалу]) INNER JOIN [Ціна Матеріалу] ON Довідник.[Код матеріалу] = [Ціна Матеріалу].[Код Матеріалу]

GROUP BY Довідник.[Назва матеріалу], [Потреби Будматеріалів].Рік, [Потреби Будматеріалів].Місяць, [Ціна Матеріалу].Ціна

HAVING ((([Потреби Будматеріалів].Рік)=2000));

Завдання 16.

Структура таблиць

Кожна з наведених таблиць має певний набір полів з заданим типом даних. На малюнку показана таблиця у режимы конструктора. Перший стовпчик – назва полів , а другий – тип даних, що будуть міститися у даних полях.

Ключовим полем визначаємо поле Код устаткування та Код деталі у першій та третій таблиці так як лише воно може бути унікальними за логікою.

Опис створення індексів за полями «Рік» та «Місяць» таблиці «Виробгицтво…..»:

Відкриємо таблицю в режимі Коструктора натиснувши при виділеному об’єкті кнопку. Виділяємо по черзі вказані поля та у розділі «Свойства» вибираємо рядок «Индексированное поле» та вибираємо з випадаючого списку позицію Да( Совпадения допускаються) . Переглянути індекси можна у вікні «Индекси», що викликається командою Вид-Индекси.

Звязки між таблицями:

Логічно зв’язки доцільно встановити у вигляді: (мал.)

Отже між таблицями « Довідник» та «Норма..» та «Норма…» і «Виробництво» існує зв’язок один до багатьох.

2.Вибрати рік, місяць, назву устаткування, кількість деталей, норму часу і загальні трудовитрати (=Норма Часу*Кількість) з 1999 по 2006 рр.

SELECT Виробництво.Рік, Виробництво.Місяць, Довідник.[Назва устаткування], Виробництво.Кількість, [Норма часу].[Норма часу], [Кількість]*[Норма часу] AS [Загальні витрати]

FROM (Довідник INNER JOIN [Норма часу] ON Довідник.[Код устаткування] = [Норма часу].[Код устаткування]) INNER JOIN Виробництво ON [Норма часу].[Код деталі] = Виробництво.[Код деталі]

WHERE (((Виробництво.Рік)>1999 Or (Виробництво.Рік)<2006));

Замінити норму витрат для деталі з кодом АА.1234 на устаткуванні з кодом С81-5 операція 1 на 11,1

UPDATE [Норма часу] SET [Норма часу].[Норма часу] = 11.1

WHERE ((([Норма часу].[Код деталі])="АА.1234") AND (([Норма часу].[Код устаткування])="С81-5") AND (([Норма часу].[Код операції])="1"));

Вилучити записи на 20006 рік з таблиці «Виробництво»

DELETE Виробництво.Рік

FROM Виробництво

WHERE (((Виробництво.Рік)=2006));

Додати запис у довідник «Код устаткування» = «ААА-42», «Назва устаткування» - Зварювальний

Insert into Довідник ( [Код устаткування], [Назва устаткування] )

SELECT 'AАА-42' AS [Код устаткування], 'Зварювальний апрат' AS [Назва устаткування]

FROM Довідник;

Визначити загальні річні трудовитрати і кількість деталей , оброблених на кожному устаткуванні починаючи з 2000 року. Запит повинен включати поле «Назва устаткування»

SELECT Довідник.[Назва устаткування], Виробництво.Кількість, Sum([Кількість]*[Кількість]) AS [Загальні витрати], Виробництво.Рік

FROM (Довідник INNER JOIN [Норма часу] ON Довідник.[Код устаткування] = [Норма часу].[Код устаткування]) INNER JOIN Виробництво ON [Норма часу].[Код деталі] = Виробництво.[Код деталі]

GROUP BY Довідник.[Назва устаткування], Виробництво.Кількість, Виробництво.Рік

HAVING (((Виробництво.Рік)>1999));

Завдання 17

Структура таблиць

Кожна з наведених таблиць має певний набір полів з заданим типом даних. На малюнку показана таблиця у режимы конструктора. Перший стовпчик – назва полів , а другий – тип даних, що будуть міститися у даних полях.

Ключовим полем визначаємо поле Код ВидРахунку у першій та третій таблиці так як лише воно може бути унікальними за логікою.

Опис створення індексів за полями «Номер Рахунку та «КодВид рахунку» та «ДатаВідкриття» таблиці «Рахунки.»:

Відкриємо таблицю в режимі Коструктора натиснувши при виділеному об’єкті кнопку. Виділяємо по черзі вказані поля та у розділі «Свойства» вибираємо рядок «Индексированное поле» та вибираємо з випадаючого списку позицію Да( Совпадения допускаються) . Переглянути індекси можна у вікні «Индекси», що викликається командою Вид-Индекси.

Звязки між таблицями:

Логічно зв’язки доцільно встановити у вигляді: (мал.)

Отже між таблицями « Довідник» та «Процентна ст….» існує зв’язок один до одного та «Процентна Ставка…» і «Рахунки» існує зв’язок один до багатьох.

2.Вибрати номер рахунку, вид рахунку, залишок на рахунку, процентну ставку і нараховані проценти (=Ставка*Залишок) по рахунках, відкритим з 1999 по 2006 рік

SELECT Рахунки.[Номер Рахунку], Довідник.[Вид рахунку], Рахунки.[Дата Відкриття], Рахунки.Залишок, [Процентна ставка].Ставка, [Ставка]*[Залишок] AS [НАраховані Відсотки]

FROM (Довідник INNER JOIN [Процентна ставка] ON Довідник.КодВидуРахунку = [Процентна ставка].[КодВид Рахунку]) INNER JOIN Рахунки ON [Процентна ставка].[КодВид Рахунку] = Рахунки.[Код Вид Рахунку];

Замінити процентну ставку на 0,185 для виду рахунку з кодом 1 на 12.01.07

UPDATE [Процентна ставка] SET [Процентна ставка].Ставка = 0.185

WHERE ((([Процентна ставка].[КодВид Рахунку])="1") AND (([Процентна ставка].Дата)=#1/12/2007#));

Вилучити записи з датою відкриття у 2006 році з таблиці «Рахунки»

DELETE Рахунки.[Дата Відкриття]

FROM Рахунки

WHERE (((Рахунки.[Дата Відкриття]) Like "*.*.2007"));

Додати запис у довідник «КодВидРахунку» = 5, «ВидРахунку» = «Депозитна картка»