Реляционная модель данных
Задания для самостоятельной работы
Задание 1
Даны отношения, моделирующие работу банка и его филиалов. Клиент может иметь несколько счетов, при этом они могут быть размещены как в одном, так и в разных филиалах банка. В отношении R1 содержится информация обо всех клиентах и их счетах в филиалах нашего банка. Каждый клиент, в соответствии со своим счетом, может рассчитывать на некоторый кредит от нашего банка, сумма допустимого кредита также зафиксирована.
С использованием языка реляционной алгебры составить запросы, позволяющие выбрать:
- Филиалы, клиенты которых имеют счета с остатком, превышающим $1000.
- Клиентов, которые имеют счета во всех филиалах данного банка.
- Клиентов, которые имеют только по одному счету в разных филиалах банка. То есть в общем у этих клиентов может быть несколько счетов, но в одном филиале не более одного счета.
- Клиенты, которые имеют счета в нескольких филиалах банка, расположенных только в одном районе.
- Филиалы, которые не имеют ни одного клиента.
- Филиалы, которые имеют клиентов с остатком на счету 0 (ноль).
- Филиалы, у которых есть клиенты с кредитом, превышающим остаток на счету в 2 раза.
Задание 2
Даны отношения, моделирующие работу международной фирмы, имеющей несколько филиалов. Филиалы фирмы могут быть расположены в разных странах, это отражено в отношении R1. Клиенты фирмы также могут быть из разных стран, и это отражено в отношении R4. По каждому конкретному заказу клиент мог заказать несколько разных товаров.
С использованием реляционной алгебры составить запросы, позволяющие выбрать:
- Заказчиков, которые работают со всеми филиалами фирмы, но покупают только один товар.
- Филиалы фирмы, которые торгуют всеми товарами.
- Товары, которые фирма продает только в одной стране.
- Заказчиков, которые работают с филиалами фирмы, которые расположены только в одной стране.
- Филиалы, с которыми не работает ни один заказчик.
- Заказчиков, которые работают только с филиалами, расположенными в той же стране, что и заказчик.
- Заказчиков, которые покупают все товары, представленные в отношении R3.
Задание 3
Даны отношения, моделирующие работу фирмы, занимающейся разработкой программных систем. Каждый сотрудник административно закреплен только за одним отделом. Файлы хранятся на разных серверах. На разных серверах файлы могут иметь одинаковые имена. Создатель файла является его владельцем, поэтому у каждого файла только один владелец, но владелец файла может разрешить пользоваться файлом другим сотрудникам. Существует множество системного программного обеспечения, каждая программа может работать с одним или с несколькими файлами, расположенными на одном или нескольких серверах:
С использованием реляционной алгебры и языка составить запросы, позволяющие выбрать:
- Файлы, которые имеют нескольких пользователей из разных отделов.
- Программы, которые работают только с одним файлом.
- Файлы, которые имеют одно и тоже имя, но расположены на различных серверах и используются сотрудниками разных отделов.
- Файлы, с которыми работают сотрудники всех отделов.
- Файлы, пользователями которых являются сотрудники только одного отдела.
- Программы, которые работают со всеми серверами.
- Отделы, сотрудники которых не работают ни с одним файлом. То есть отделы, в которых нет ни одного сотрудника, работающего с каким-нибудь файлом.
- Отделы, сотрудники которых работают со всеми серверами.
- Серверы, с которыми работают сотрудники только одного отдела.