CREATE TABLE employees (
    id INT,
    name VARCHAR(50),
    department VARCHAR(50),
    salary DECIMAL(10, 2),
    hire_date DATE
);

INSERT INTO employees (id, name, department, salary, hire_date)
VALUES
(1, 'Alice', 'HR', 60000, '2021-02-15'),
(2, 'Bob', 'IT', 75000, '2020-05-23'),
(3, 'Charlie', 'IT', 80000, '2021-06-01'),
(4, 'David', 'Sales', 55000, '2022-01-10'),
(5, 'Eve', 'Sales', 50000, '2021-11-30'),
(6, 'Frank', 'HR', 62000, '2019-03-25'),
(7, 'Grace', 'IT', 70000, '2021-09-12'),
(8, 'Heidi', 'Marketing', 48000, '2022-03-05'),
(9, 'Ivan', 'Marketing', 52000, '2022-04-18'),
(10, 'Judy', 'Sales', 53000, '2021-07-20'),
(11, 'Ken', 'HR', 61000, '2022-05-22'),
(12, 'Laura', 'Marketing', 51000, '2021-08-30');

SELECT department, COUNT(*) as employee_count, AVG(salary) as avg_salary
FROM employees
WHERE hire_date > '2020-01-01'
GROUP BY department
HAVING AVG(salary) > 50000
ORDER BY avg_salary DESC
-- OFFSET 1 ROWS
-- FETCH NEXT 2 ROWS ONLY;