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

2. Визначити район, телефон, кількість кімнат і вартість квартири за карткою №1234

Запит в режимі SQL

SELECT Картотека.НомерКартки, Картотека.Телефон, Картотека.Площа, [Середня ціна].СередняЦіна, [Площа]*[СередняЦіна] AS ВАРТІСТЬ, [Довідник районів].НазваРайону, Картотека.[Кількість кімнат]

FROM [Довідник районів] INNER JOIN ([Середня ціна] INNER JOIN Картотека ON [Середня ціна].Кодрайону = Картотека.КодРайону) ON (Картотека.КодРайону = [Довідник районів].КодРайону) AND ([Довідник районів].КодРайону = [Середня ціна].Кодрайону)

WHERE (((Картотека.НомерКартки)="1234"));

Заміна поверху на 102 для картки 1234

UPDATE Картотека SET Картотека.[Кількість поверхів] = 10

WHERE (((Картотека.НомерКартки)="1234"));

Вилучити запис щодо картки №1230

DELETE Картотека.НомерКартки

FROM Картотека

WHERE (((Картотека.НомерКартки)="1230"));

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

SELECT [Довідник районів].НазваРайону, Avg([Середня ціна].СередняЦіна) AS [СередняЦіна по місту]

FROM [Довідник районів] INNER JOIN [Середня ціна] ON [Довідник районів].КодРайону = [Середня ціна].Кодрайону

GROUP BY [Довідник районів].НазваРайону;

Додати запис у довідник районів КодРайону =22, Назва Району = «Бровари»

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

SELECT 22 AS КодРайону, "Бровари" AS НазваРайону

FROM [Довідник районів];

Завдання 26

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

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

Ключовими полями визначаємо поле КодРобітника У двох перших таблицях, при чому у таблиці «Заробіток» у властивостях встановимо опцію Да(Совпадения допускаються).

Опис створення індексів за полями «КодРобітника» та «Цех» , «Місяць» таблиці «Заробіток»:

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

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

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

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

2. Вибрати прізвища і суми заробітку всіх працівників, у яких заробіток у 1 місяці більше 120:

SELECT КАдри.Прізвище, Заробіток.Заробіток, Премія.Премія, [Заробіток]+[Премія] AS [На руки], Премія.Місяць

FROM (КАдри INNER JOIN Заробіток ON КАдри.[Код Робітника] = Заробіток.[Код робітника]) INNER JOIN Премія ON Заробіток.[Код робітника] = Премія.КодРОбітника

WHERE (((Заробіток.Заробіток)>120) AND ((Премія.Місяць)=1));

Замінити розмір заробітку працівника з кодом 0001 за 2 місяць у 21 цеху на 280,1

UPDATE Заробіток SET Заробіток.Заробіток = 280.1

WHERE (((Заробіток.[Код робітника])="0001") AND ((Заробіток.Місяць)=2) AND ((Заробіток.Цех)=21));

Вилучити записи в таблиці «Премія» щодо робітника з кодом 0002 щодо 3 цеху

DELETE Премія.КодРОбітника, Премія.Цех

FROM Премія

WHERE (((Премія.КодРОбітника)="0002") AND ((Премія.Цех)=3));

Додати запис у довідник кадрів «КодРобітника»=0022, «Прізвище» = Іванов І.І.