Top.Mail.Ru
Ответы

Как правильно написать Запрос на SQL

Как правильно написать Запрос на SQL которые прибавляется сотрудникам 100 к зарплате которые совершили 25 или более продаж в этом месяце

Имеем users (id, division, login, block)

emploees (id,fullname, salary, firedDate, hiredDate, chief)

sales (id, login, summ, saledate)

Дополнен

Есть таблицы со следующей структурой
users (id, division, login, block)
id - первичный ключ
division - отделение сотрудника
login - логин
block - блокирован - 1 или активен - 0

emploees (id,fullname, salary, firedDate, hiredDate, chief)
id - внешний ключ
fullname - ФИО
salary - зарплата
fireDate - дата увольнения
hiredDate - дата приема на работу
chief - руководитель

sales (id, login, summ, saledate)
id - внешний ключ
login - логин сотрудника
summ - сумма продажи
saledate - дата продажи

По дате
По рейтингу
Аватар пользователя
Мастер

Я бы такую задачу бы решал через триггер... "Если поле "количество продаж" превышает 25, то поле "зарплата" изменить на +100" и поле "обработано" изменить с "0" на "1"... Таким образом, решаются основные задачи.

Аватар пользователя
Мудрец

Диалект Oracle. Не проверял.
update employees set salary=salary+100000 where id in (select id from sales where saledate between trunc('month',sysdate) and sysdate group by id having count(1)>24) and fireddate is null