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

Insert into Довідник ( [Код посади], КодКатегорії, Ставка )

SELECT 10 AS [Код посади], 4 AS КодКатегорії, 420 AS Ставка

FROM Довідник;

Визначити середню ставку і премію за посадами за 2006 рік

SELECT ВідомостьНарахувань.КодПосади, Avg(ВідомостьНарахувань.ПРемія) AS [Avg-ПРемія], Avg(Довідник.Ставка) AS [Avg-Ставка]

FROM Довідник INNER JOIN ВідомостьНарахувань ON Довідник.[Код посади] = ВідомостьНарахувань.КодПосади

GROUP BY ВідомостьНарахувань.КодПосади;

Завдання 7.

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

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

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

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

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

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

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

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

2.Вибрати проданий товар, включаючи назву, кількість, ціну, проц..Ставку і одержану суму (=Ціна*(1+ПРОцентна ставка/100)*Кількість) за 12.05.2007

SELECT [Відомость продажу].КодТовару, Довідник.НазваТовару, [Відомость продажу].Кількість, [Відомость продажу].Ціна, [Процентная ставка].[Процентная ставка], [Ціна]*(1+[Процентная ставка]/100)*[Кількість] AS Сума

FROM (Довідник INNER JOIN [Процентная ставка] ON Довідник.КодТовара = [Процентная ставка].КодТовару) INNER JOIN [Відомость продажу] ON [Процентная ставка].КодТовару = [Відомость продажу].КодТовару

WHERE ((([Відомость продажу].ДатаПродажу)=#5/12/2007#));

Замінити процентну ставку на 11,5 для товару з кодом 40001 на 01.05.2007

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

WHERE ((([Процентная ставка].КодТовару)="40001") AND (([Процентная ставка].Дата)=#5/1/2007#));

Вилучити записи за 13.05.2007 з таблиці «ВідомостьПродажу»

DELETE [Відомость продажу].ДатаПродажу

FROM [Відомость продажу]

WHERE ((([Відомость продажу].ДатаПродажу)=#5/13/2007#));

Додати запис у довідник «КодТовару» =50005, «Назва товару» = «Цукор»

Insert into Довідник ( КодТовара, НазваТовару )

SELECT 50005 AS КодТовара, 'Цукор' AS НазваТовару

FROM Довідник;

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

SELECT Довідник.НазваТовару, [Процентная ставка].Дата, Avg([Процентная ставка].[Процентная ставка]) AS [Avg-Процентная ставка]

FROM Довідник INNER JOIN [Процентная ставка] ON Довідник.КодТовара = [Процентная ставка].КодТовару

GROUP BY Довідник.НазваТовару, [Процентная ставка].Дата

HAVING ((([Процентная ставка].Дата) Like "*2006"));

Завдання 8.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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