Advertisement
Guest User

Untitled

a guest
Feb 18th, 2018
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.58 KB | None | 0 0
  1. CREATE FUNCTION ufn_get_salary_level(salary DECIMAL(19,4))
  2. RETURNS VARCHAR(50)
  3. BEGIN
  4. DECLARE salary_level VARCHAR(50);
  5.  
  6. SET salary_level := CASE
  7. WHEN salary < 30000 THEN 'Low'
  8. WHEN salary BETWEEN 30000 AND 50000 THEN 'Average'
  9. ELSE 'High'
  10. END;
  11. RETURN salary_level;
  12. END
  13.  
  14. CREATE PROCEDURE usp_get_employees_by_salary_level(salary_level VARCHAR(20))
  15. BEGIN
  16. START TRANSACTION;
  17. SELECT e.first_name, e.last_name
  18. FROM employees AS e
  19. WHERE ufn_get_salary_level(e.salary) LIKE salary_level
  20. ORDER BY e.first_name DESC, e.last_name DESC;
  21.  
  22. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement