Задание.
Вариант 1.
1. Для всех проектировщиков, программистов и тестировщиков, не занятых в настоящее время работой ни над одной задачей, вывести отдел, в котором они работают, должность, Фамилию И.О. и телефон. Сортировать по отделу, должности, фамилии и имени (все в алфавитном порядке). 2. Для сотрудников, занятых в настоящее время работой более, чем над 2 задачами, вывести отдел, в котором они работают, должность, Фамилию И.О., телефон и число, решаемых каждым из них задач. Сортировать по отделу, должности, числу задач (по убыванию) и фамилии (в алфавитном порядке). 3. Для каждой задачи, реализуемой в настоящий момент на предприятии, определить количество сотрудников, подключенных к ее решению, в разрезе их должностей (т.е. необходимо вывести название задачи, должности и число сотрудников, занимающих такую должность и прикрепленных к данной задаче). Сортировать по названию задачи и должности (все в алфавитном порядке). 4. Для сотрудников, чья заработная плата более, чем на 10% выше средней по их отделу, вывести отдел, в котором они работают, Фамилию И.О. и зарплату. Сортировать по отделу, должности (все в алфавитном порядке) и заработной плате (по убыванию). 5. Вывести служебную иерархию сотрудников предприятия, принадлежащих первым трем уровням иерархии. Первым уровнем считать сотрудников, не имеющих непосредственного начальника. Для каждого сотрудника вывести должность, Фамилию И.О., телефон и зарплату. Сортировать в порядке иерархии. 6. Получить информацию о сотрудниках (должность, Фамилия И.О., телефон и зарплата), отвечающих в декабре 2000 более, чем за 1 задачу. Сортировать по фамилии и имени. 7. Вывести информацию о сотрудниках (отдел, должность, Фамилия И.О., телефон, зарплата и Фамилия И.О. непосредственного начальника, если он есть), получающих максимальную зарплату в отделе и не являющихся чьими-либо непосредственными начальниками. Сортировать по названию отдела в алфавитном порядке. 8. Вывести информацию об ответственных за задачи (отдел, должность, Фамилия И.О., телефон, зарплата и Фамилия И.О. непосредственного начальника, если он есть), а также названия задач, которые в 2000 году были завершены раньше срока, определенного по плану. Сортировать по дате начала работы над задачей. 9. Вывести названия отделов, средняя зарплата сотрудников которых выше средней зарплаты в других отделах, и среднюю зарплату сотрудников данных отделов. Сортировать по названию отдела в алфавитном порядке. 10. Для каждой задачи, начатой в текущем году, вывести список дат начала и фактического завершения с соответствующей пометкой – «начало» и «окончание» (т.е. необходимо вывести три столбца: название задачи, дата и признак начала или завершения задачи). Сортировать по названию задачи в алфавитном порядке и дате по возрастанию. 11. Вывести информацию о сотрудниках (отдел, должность, Фамилия И.О., телефон, зарплата и Фамилия И.О. непосредственного начальника, если он есть), бывших в 2000 году ответственными за хотя бы 1 задачу и не являющихся чьими-либо непосредственными начальниками. Сортировать по названию отдела и фамилии (все в алфавитном порядке). 12. Перечислить число задач, завершенных в 2000 году и число сотрудников, подключенных к решению каждой из задач. Сортировать по названию задачи в алфавитном порядке.
Вариант 2.
1. Получить должности и Фамилии И.О. всех пилотов 1, 2 и 3 классов, не занятых в полетах последние 12 часов. Сортировать по должности и фамилии (все в алфавитном порядке). 2. Вывести всю имеющуюся в БД информацию о самолетах и количестве рейсов, в которых использовался каждый из самолетов в 2000 году. Сортировать по модели самолета и текущему состоянию. 3. Для каждой пары пункт отправления – пункт назначения определить в разрезе моделей самолетов число рейсов за текущий год (т.е. для каждой пары пункт отправления – пункт назначения определить какие использовались модели самолетов и сколько самолеты каждой модели выполнили полетов по данному маршруту). Сортировать по пункту отправления – пункту назначения и модели (все в алфавитном порядке). 4. Для каждого командира экипажа (вывести подразделение, должность, Фамилию И.О., зарплату и телефон) определить в скольких полетах он был командиром экипажа в 2000 году, и в скольких из них произошел сбой в расписании. Сортировать по подразделению, должности и фамилии (все в алфавитном порядке). 5. Для сотрудников, чья заработная плата более, чем на 10% выше средней по их подразделению, вывести подразделение, в котором они работают, Фамилию И.О. и зарплату. Сортировать по подразделению, должности (все в алфавитном порядке) и заработной плате (по убыванию). 6. Вывести служебную иерархию сотрудников авиакомпании, принадлежащих первым трем уровням иерархии. Первым уровнем считать сотрудников, не имеющих непосредственного начальника. Для каждого сотрудника вывести должность, Фамилию И.О., телефон и зарплату. Сортировать в порядке иерархии. 7. Вывести информацию о сотрудниках (подразделение, должность, Фамилия И.О., телефон, зарплата и Фамилия И.О. непосредственного начальника, если он есть), получающих максимальную зарплату в отделе и не являющихся чьими-либо непосредственными начальниками. Сортировать по названию подразделения в алфавитном порядке. 8. Вывести названия подразделений, средняя зарплата сотрудников которых выше средней зарплаты в других подразделениях, и среднюю зарплату сотрудников данных подразделений. Сортировать по названию подразделения в алфавитном порядке. 9. Для каждой пары пункт отправления – пункт назначения определить минимальное и максимальное число членов экипажей, выполнявших данные рейсы в текущем году. Сортировать по пункту отправления – пункту назначения в алфавитном порядке. 10. Вывести информацию о сотрудниках (подразделение, должность, Фамилия И.О., телефон, зарплата и Фамилия И.О. непосредственного начальника, если он есть), бывших в 2000 году командирами хотя бы 1 рейса и не являющихся пилотами первого класса. Сортировать по названию подразделения и фамилии (все в алфавитном порядке). 11. В текущем году для каждой пары пункт отправления – пункт назначения несколько раз менялось время полета по расписанию. Требуется определить наиболее оптимальное время полета, с этой целью для каждого варианта пункт отправления – пункт назначения и время полета по расписанию вычислить среднее время нарушения расписания. 12. Определить новые маршруты авиакомпании. Для чего вывести все пары пункт отправления – пункт назначения, которые отсутствовали в рейсах прошлого года, но появились в текущем году.
Вариант 3.
1. Для всех товаров, принадлежащих группам 'Книги' и 'CD диски' и не заказанных в настоящее время ни одним покупателем, вывести наименование товара, наименование группы, фирму-производитель, страну-производитель, марку товара и цену. Сортировать по группе, фирме, наименованию и марке (все в алфавитном порядке). 2. Для покупателей, имеющих в настоящее время хотя бы один неоплаченный заказ, вывести фамилию, имя, отчество, адрес, телефон и общую сумму долга. Сортировать по сумме долга (по убыванию) и фамилии (в алфавитном порядке). 3. Для каждого предлагаемого товара определить число заказов, выполненных в текущем году, с учетом состояния оплаты (т.е. необходимо вывести наименование товара; наименование группы; фирму-производитель; страну-производитель; марку товара; состояние счетов: оплачен, оплата ожидается (требуемая дата оплаты еще не наступила), оплата просрочена; число заказов данного товара с указанным состоянием счета). Сортировать по группе, наименованию, фирме, марке и состоянию счета (все в алфавитном порядке). 4. Для товаров, чья стоимость более, чем на 10% выше средней для их группы, вывести группу, наименование товара, фирму-производитель, страну-производитель, марку товара и цену. Сортировать по группе, фирме (в алфавитном порядке) и цене (по убыванию). 5. Вывести иерархию счетов, оформленных в текущем месяце на группу товаров 'CD диски'. Для каждого счета вывести номер, наименование товара, сумму счета, дату заказа, требуемую дату оплаты, фактическую дату оплаты. Сортировать в порядке иерархии. 6. Получить информацию о покупателях (Фамилия И.О., адрес, телефон и статус), выполнивших в январе 2002 более 1 заказа. Сортировать по фамилии и имени. 7. Для каждого покупателя вывести информацию о самом крупном заказе, выполненным им в текущем году (Фамилия И.О., наименование товара, фирма, марка, номер счета (только основного), сумма счета, дата заказа, требуемая дата оплаты, фактическая дата оплаты). Сортировать по фамилии в алфавитном порядке. 8. Вывести информацию о покупателях и счетах, которые в 2001 году были оплачены раньше срока, определенного по плану (учитывать график оплаты только основных счетов, т.е. если счет разбит на подсчета, то оплата считается досрочной только в случае если она полностью произведена до срока, указанного в основном счете). Сортировать по дате заказа и фамилии покупателя. 9. Для каждой группы товаров вывести общую сумму заказов, оплаченных в текущем году. Сортировать по названию группы в алфавитном порядке. 10. Для каждого товара вывести в одной строке с пометкой "оплачено" сумму, оплаченную в текущем году покупателями при заказе данного товара, в другой строке с пометкой "ожидается" вывести сумму, которая ожидается в этом году (срок оплаты еще не наступил), и в третьей строке с пометкой "просрочено" вывести сумму долга за текущий год по указанному товару. Сортировать по группе, наименованию, фирме и марке в алфавитном порядке. 11. Вывести информацию покупателях (Фамилия И.О., телефон, адрес и статус), попросивших в 2001 году хотя бы единожды разбить счет на подсчета. Сортировать по фамилии в алфавитном порядке. 12. Вывести информацию о покупателях (Фамилия И.О., телефон, адрес и сумма просроченных счетов), заплативших в текущем году позже указанного срока хотя бы по одному заказу, с пометкой "оплатил с задержкой" и вывести информацию о покупателях (Фамилия И.О., телефон, адрес и сумма неоплаченных счетов), не заплативших в текущем году хотя бы по одному заказу, срок оплаты которого уже прошел, с пометкой "не оплатил". Сортировать по фамилии в алфавитном порядке.
|