Показать сообщение отдельно
Старый 30.11.2004, 17:32     # 1
switch_on
Newbie
 
Регистрация: 26.01.2004
Адрес: NSK
Сообщения: 45

switch_on Путь к славе только начался
Помогите с Mysql

Реально ли сделать вот это средствами только mysql. А то я только первый пункт знаю как сделать.

Имеется пять таблиц:
Workers: (WorkID, Name, RoleID, DeptID) Сотрудники
Deptartments: (DeptID, Name) Отделы
Roles: (RoleID, Name, Salary) Должности
BonusesTypes (BonusID, Name, Sum) Типы премий
Bonuses: (UserID, BonusID, Date) Начисленные премии

Salary - годовая ЗП.

При решении ориентироваться на MySql.

Для тех задач, где возможно решение и со временной таблицей и без нее
- составить два варианта.
Нужно составить запрос или последовательность запросов для решения
задачи:

1. Список сотрудников отсортированных по отделам, с указанием должностей.
<Имя> <Должность> <Отдел>

2. Список сотрудников сгруппированных по отделам в след. виде
<Отдел1>
<Имя1> <Должность> <ЗП за месяц>
<Имя2> <Должность> <ЗП за месяц>
<Отдел2>
<Имя3> <Должность> <ЗП за месяц>
и т.д.

3. Список начислений по всем сотрудникам за указанный месяц года (ЗП
за месяц + бонусы)

3. Список начислений по всем сотрудникам за указанный год (ЗП
+ бонусы за год)

4. Составить список "Численность отделов"
<Отдел> <Кол-во сотрудников> <Средняя ЗП за месяц>

5. Составить список "мертвых" отделов (где нет сотрудников)

6. Удалить все "мертвые" отделы

7. Составить список должностей по заданному отделу
<Должность1>
<Должность2>
и т.д.

8. Составить список людей с бонусами
<Имя> <сумарный бонус>
switch_on вне форума