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

Insert into Довідник ( КодПрацівника, піб )

SELECT '4033' AS КодПрацівника, 'Марчук В.О' AS ПІБ

FROM Довідник;

Визначити кількість деталей, вироблених кожним працівником в березні 2007 року. Запит повинен включати поле ПІБ.

SELECT Довідник.ПІБ, ОбсягВиробництва.Дата, Sum(ОбсягВиробництва.[Кількість деталей]) AS [Sum-Кількість деталей]

FROM Розцінка INNER JOIN (Довідник INNER JOIN ОбсягВиробництва ON Довідник.КодПрацівника = ОбсягВиробництва.КодПРацівника) ON Розцінка.КодДеталі = ОбсягВиробництва.КодДеталі

GROUP BY Довідник.ПІБ, ОбсягВиробництва.Дата

HAVING (((ОбсягВиробництва.Дата) Like "*.03.2007"));

Задача 29

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

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

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

Опис створення індексів за полями «Кількість Акцій» та «Рік» таблиці «Акції»:

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

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

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

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

2.Вибрати назву фірми, кількість акцій, номінал, прибуток від однієї акції (=Прибуток/Кількість акцій) з 2000 по 2005 рік

SELECT Довідник.[Назва Фірми], Акції.[Кількість акцій], Акції.Номінал, [Фінансові результати].ПРибуток, [Фінансові результати].Рік, [ПРибуток]/[Кількість акцій] AS [Прибуток на одну акцію]

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

WHERE ((([Фінансові результати].Рік)>1999 Or ([Фінансові результати].Рік)<2006));

Замінити прибуток фірми з кодом 0025 у 2006 р на 303030

UPDATE [Фінансові результати] SET [Фінансові результати].ПРибуток = 303030

WHERE ((([Фінансові результати].КодФірми)="0025") AND (([Фінансові результати].Рік)=2005));

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

DELETE [Фінансові результати].Рік

FROM [Фінансові результати]

WHERE ((([Фінансові результати].Рік)=2006));

Додати запис у довідник «КодФірми»- 1025, «Назва Фірми» - «ТОВ Марчук»

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

SELECT '1025' AS КодФірми, 'ТОВ МАРЧУК ' AS [Назва Фірми]

FROM Довідник;

Визначити загальний прибуток фірм починаючи з 2003р. Запит повинен включати поле «Назва фірми»

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

FROM Довідник INNER JOIN [Фінансові результати] ON Довідник.КодФірми = [Фінансові результати].КодФірми

GROUP BY Довідник.[Назва Фірми], [Фінансові результати].Рік

HAVING ((([Фінансові результати].Рік)>2002));