imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 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 вне форума  
Старый 30.11.2004, 18:35     # 2
RaZEr
МОД-Оператор ЭВМ
 
Аватар для RaZEr
 
Регистрация: 18.04.2002
Адрес: Питер
Сообщения: 4 343

RaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех ГуруRaZEr Отец (мать) всех Гуру
http://dev.mysql.com/doc/mysql/en/JOIN.html
RaZEr вне форума  
Старый 01.12.2004, 11:48     # 3
Jlamepok
Junior Member
 
Аватар для Jlamepok
 
Регистрация: 31.08.2003
Адрес: РБ, Гомель
Пол: Male
Сообщения: 120

Jlamepok Мелкий засранец
select
w.name as wname, d.name as dname и.т.д.

from

workers w
left join Deptartments d on (d.DeptID=w.DeptID)
left join Roles r on (r.RoleID=w.RoleID)
group by w.DeptID

Вот маленький пример, но, не тестил, от руки писал
__________________
There is no fate but what we make for ourselves.
Jlamepok вне форума  
Старый 01.12.2004, 17:26     # 4
switch_on
Newbie
 
Регистрация: 26.01.2004
Адрес: NSK
Сообщения: 45

switch_on Путь к славе только начался
Все, спасибо уже разобрался. Тему можно закрывать.
switch_on вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 19:27.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.