-- ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ
create table employees(
employee_id int, -- ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°
department varchar, -- ΡΠΈΠ»ΠΈΠ°Π» ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ
employment_date date, -- Π΄Π°ΡΠ° ΡΡΡΠ΄ΠΎΡΡΡΡΠΎΠΉΡΡΠ²Π°
sales_numb int, -- ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°
sales_sum int, -- ΡΡΠΌΠΌΠ° ΠΏΡΠΎΠ΄Π°ΠΆ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°
late_days int -- ΠΊΠΎΠ»-Π²ΠΎ ΠΎΠΏΠΎΠ·Π΄Π°Π½ΠΈΠΉ
);
--Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡΡ
insert into employees values
(1,'Π€ΠΈΠ»ΠΈΠ°Π»1','2022-07-24',15,10000000,0),
(2,'Π€ΠΈΠ»ΠΈΠ°Π»1','2023-07-24',22,1020000,1),
(3,'Π€ΠΈΠ»ΠΈΠ°Π»2','2022-07-24',18,9990000,0),
(4,'Π€ΠΈΠ»ΠΈΠ°Π»2','2021-07-24',17,999000,0),
(4,'Π€ΠΈΠ»ΠΈΠ°Π»2','2021-07-24',12,999000,3),
(4,'Π€ΠΈΠ»ΠΈΠ°Π»3','2024-07-24',15,9990000,0);
SELECT * FROM employees;
SELECT department,
SUM(CASE WHEN employment_date<'2023-12-30'::TIMESTAMP
AND sales_numb>=15
AND sales_sum>1000000
AND late_days=0
THEN 1
ELSE 0
End) as bonus_total
FROM employees
group by department
order by department asc;