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

Insert into Довідник ( КодАкцій, НазваАкцій )

SELECT 50025 AS КодАкцій, 'WinnerFord' AS НазваАкцій

FROM Довідник;

Визначити середню вартість за видами акцій на 2006 рік. Запит повинен містити поле «НазваАкцій».

SELECT Довідник.НазваАкцій, [Поточні ціни].Рік, ([Початкова ціна]+[Поточна ціна])/2 AS [середня вартість]

FROM (Довідник INNER JOIN ВІдомостьПроАкції ON Довідник.КодАкцій = ВІдомостьПроАкції.КодАкцій) INNER JOIN [Поточні ціни] ON ВІдомостьПроАкції.КодАкцій = [Поточні ціни].[Код акції] WHERE ((([Поточні ціни].Рік)=2006));

Завдання 14.

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

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

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

Опис створення індексів за полями «Дата» та «Балансова вартість» таблиці «БалансоваВартість»:

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

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

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

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

2.Вибративартість устакування , включаючи назву, цех, балансову вартість, норму амортизації і залишкову вартість(=БалансоваВартість*(1-НормаАмортизації/100)) на 01.01.2006

SELECT Довідник.НазваУстаткування, [Балансова відомость].Цех, [Балансова відомость].[Балансова Вартість], НормаАмортизації.НормаАмортизації, [Балансова Вартість]*(1-[НормаАмортизації]/100) AS [Залишкова вартість], [Балансова відомость].Дата

FROM (Довідник INNER JOIN НормаАмортизації ON Довідник.КодУстаткування = НормаАмортизації.КодУстакування) INNER JOIN [Балансова відомость] ON НормаАмортизації.КодУстакування = [Балансова відомость].КодУстакування

WHERE ((([Балансова відомость].Дата)=#11/1/2006#));

Замінити норму амортизації на 15,5 для устакування з кодом G827 цеху з кодом 2400

UPDATE НормаАмортизації SET НормаАмортизації.НормаАмортизації = 15.5

WHERE (((НормаАмортизації.КодУстакування)="G827") AND ((НормаАмортизації.Цех)=2400));

Вилучити записи за 01.05.2007 з таблиці «Балансова Вартість»

DELETE [Балансова відомость].Дата

FROM [Балансова відомость]

WHERE ((([Балансова відомость].Дата)=#5/1/2007#));

Додати запис у довідник «КодУстакування» = G 555, «Назва устакування» = «Слюсарне 22»

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

SELECT ' G555' AS КодУстаткування, 'Слюсарне22 ' AS НазваУстаткування

FROM Довідник;

Визначити сумарну балансову вартість за видами устакування на 01.05.2007. Запит повинен містити поле «Назва Устаткування»

SELECT Довідник.КодУстаткування, Sum([Балансова відомость].[Балансова Вартість]) AS [Sum-Балансова Вартість]

FROM (Довідник INNER JOIN НормаАмортизації ON Довідник.КодУстаткування = НормаАмортизації.КодУстакування) INNER JOIN [Балансова відомость] ON НормаАмортизації.КодУстакування = [Балансова відомость].КодУстакування

WHERE ((([Балансова відомость].Дата)=#5/1/2007#))

GROUP BY Довідник.КодУстаткування, Довідник.НазваУстаткування;

Завдання 15.

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

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

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

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

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

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

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

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

2.Вибрати рік, місяць, назву, потребу і ціну матеріалу, загальну вартість матеріалу (=Потреба*Ціна) з 1999 по 2006 рр

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

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

WHERE ((([Потреби Будматеріалів].Рік)>1998 Or ([Потреби Будматеріалів].Рік)<2006));

Замінити ціну матеріалу з кодом ААА-12 у березні 2000 на 303

UPDATE [Ціна Матеріалу] SET [Ціна Матеріалу].Ціна = 303

WHERE ((([Ціна Матеріалу].[Код Матеріалу])="ААА-12") AND (([Ціна Матеріалу].Рік)=2000) AND (([Ціна Матеріалу].Місяць)=3));

Вилучити записи за 2006 рік з таблиці «ПотребиБудматеріалів»

DELETE [Потреби Будматеріалів].Рік

FROM [Потреби Будматеріалів]

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

Додати запис у довідник «КодМатеріалу» = ААА-42, «Назва матеріалу» - Цемент Ковальской