Как правильно написать Запрос на 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