IT-планета 2010 - Oracle. Задания регионального тура

Не знаю, запрещено ли публиковать задания, но в любом случае это только то, что я помню, да и не секрет, что многих для этой олимпиады специально натаскивают.

В качестве базы использовался стандартный и доступный всем HR sample:














Каждое задание должно быть выполнено одним запросом.


Примерные задания:

1.
Вывести идентификатор и имя сотрудников, у которых в имени какая-либо
буква встречается 3 раза.

2.
  • Вывести идентификатор и название департамента
  • фамилию начальника департамента
  • мин оклад сотрудников по департаменту
  • должность, у которой мин. оклад совпадает с мин. по департаменту, если их несколько - вывести через запятую
  • макс. оклад сотрудников по департаменту
  • должность, у которой макс. оклад совпадает с макс. по департаменту, если их несколько - вывести через запятую
  • средний оклад сотрудников по департаменту.

3.
Шахматка вида:


годы (с 1987 по 2001) номер департамента
10 30 50 70 90 110 120
1987 ... ... ... ... ... ... ...
1988 ... ... ... ... ... ... ...
1989 ... ... ... ... ... ... ...
... ... ... ... ... ... ... ...

В ячейках -кол-во сотрудников, нанятых в этом году (YEAR(hire_date) = год)
4.
  • Идентификатор департамента
  • Название департамента
  • Фамилия сотрудника
  • Текущая зарплата
  • Мин. зарплата
  • Изменение минимальной зарплаты при последней смене должности (если уменьшилась - то со знаком минус, если не изменилась, то null)
  • Макс. зарплата
  • Изменение максимальной зарплаты при последней смене должности (если уменьшилась - то со знаком минус, если не изменилась, то null)

5.
Вывести второе слово из названий отделов, в которых слов больше одного.

6.
Вывести фамилии всех начальников, которые (явно или косвенно) имеют только одного подчиненного.

7.
  • Идентификатор начальника
  • Фамилия начальника
  • Название департамента
  • Кол-во подчиненных
  • Кол-во подчиненных в том же департаменте, что и начальник