EasyINSERT, UPDATE, DELETE

UPDATE: give 10% raise to engineering department

The query

SQL
UPDATE employees
SET
  salary = ROUND(salary * 1.10, 2),
  job_title = CASE
    WHEN job_title = 'Junior Engineer' THEN 'Software Engineer'
    WHEN job_title = 'Software Engineer' THEN 'Senior Engineer'
    ELSE job_title
  END
WHERE dept_id = (SELECT dept_id FROM departments WHERE dept_name = 'Engineering')
  AND status = 'active'
RETURNING emp_id, first_name, last_name, salary;
Tested against PostgreSQL 16

Note

UPDATE with subquery in WHERE. RETURNING shows what changed. Multiple columns in SET separated by commas.

Tables referenced