З а д а н и е № 4. Домашнее задание (20 баллов): 1. Пусть есть база данных с отношениями: (3 балла) Факультет_Абитуриент(Название факультета, ФИО абитуриента); Факультет_ Предметы (Название факультета, Название предмета) Напишите следующие запросы на языке SQL. (a) Сколько предметов сдает Smith. Если Smith сдает один и тот же предмет несколько раз, то учитывается каждый раз. (b) Подсчитайте, сколько предметов на каждом факультете. (c) Сколько предметов сдает Smith. Если Smith сдает один и тот же предмет несколько раз, то учитывается только 1 раз. 2 Пусть есть база со следующими отношениями (4 балла): Команды(имя, страна, уровень_фанатов) Игроки(имя, страна, имя_команды, оклад) Игры(имя_команды1, колво_голов1, имя_команды2, колво_голов2, дата) Голы(Имя_игрока, колво_голов, дата) Напишите следующие запросы на языке SQL. (a) Сколько игр сыграла каждая команда.(0,5 балла) (b) Сколько голов забил каждый игрок команды Спартак (0,5 балла) (c) Сколько очков набрала команда Спартак (0-проигрыш, 1 ничья, 3 выигрыш) (2 балла) (d) Из какой страны команда выигравшая последний матч. (1 балл) 3. Пусть есть база данных с отношениями: (3 балла) Cars (licensePlate, owner, model) Motorcycle (licensePlate, owner, model) Напишите запросы на языке SQL. (a) Список людей, которые владеют автомобилем, но не владеют мотоциклом. (b) Список людей с количеством автомобилей у каждого. (c) Напишите команду SQL, с помощью которой можно получить информацию с собственниками автомобилей и мотоциклов и количеством их автомобилей и мотоциклов. Убедитесь, что в таблицу будут включены владельцы и автомобилей и мотоциклов; владельцы только автомобилей; владельцы только мотоциклов. 2. Пусть есть база со следующими отношениями: (9 баллов) КЛИЕНТ (Кл_номер, Кл_название_фирмы, Кл_лимит_кредита, Кл_номер_служащего) П р и м е ч а н и е: кл_номер_служащего – это номер служащего, который обслуживает данную компанию, т.е. заключает с ней сделки. ЗАКАЗ (Зк_номер, Зк_клиент, Зк_название_продукта, Зк_количество, Зк_стоимость, Зк_дата) СЛУЖАЩИЙ (Сл_номер, Сл_имя, Сл_офис, Сл_план_продаж, Сл_факт_объем_продаж) П р и м е ч а н и е: Значение атрибута офис для отношения Служащий может принимать значения, которые присутствуют в качестве значений атрибута номер отношения Офис, или не принимать никакого значения. ОФИС (Оф_номер, Оф_город, Оф_регион, Оф_план_продаж, Оф_факт_объем_продаж) Напишите запросы на SQL: (a) (b) (c) (d) (e) (f) (g) (h) (i) Получить все информацию о служащих и офисах, в которых они работают. Определить наибольший и наименьший плановые объемы продаж по компании. Определить сколько служащих превысили план. Определить в скольких офисах есть служащие, превысившие плановые объемы продаж. Определить, какова средняя стоимость заказа для каждого служащего. Подсчитать общее количество заказов по каждому клиенту для каждого служащего. Для каждого офиса, в котором работают два или более человек, вычислить общий плановый и фактический объем продаж для всех служащих офиса. Вывести список служащих, у которых плановый объем продаж равен или больше планового объема продаж офиса, расположенного в Атланте. Получить список клиентов, которых обслуживает Билл Адамс.