Advertisement
Joreto

Untitled

Feb 10th, 2024
908
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 0.82 KB | None | 0 0
  1. DELIMITER //
  2.  
  3. CREATE PROCEDURE udp_increase_salaries_by_country (country_name VARCHAR(40))
  4. BEGIN
  5.     DECLARE country_id INT;
  6.    
  7.     SELECT id INTO country_id
  8.     FROM countries
  9.     WHERE name = country_name;
  10.    
  11.     UPDATE workers w
  12.     JOIN preserves p ON w.preserve_id = p.id
  13.     JOIN countries_preserves cp ON p.id = cp.preserve_id
  14.     SET w.salary = w.salary * 1.05
  15.     WHERE cp.country_id = country_id;
  16.    
  17.     SELECT
  18.         w.first_name,
  19.         w.last_name,
  20.         w.salary * 0.95 AS salary_before,
  21.         w.salary AS salary_after
  22.     FROM
  23.         workers w
  24.     JOIN
  25.         preserves p ON w.preserve_id = p.id
  26.     JOIN
  27.         countries_preserves cp ON p.id = cp.preserve_id
  28.     WHERE
  29.         cp.country_id = country_id;
  30. END //
  31.  
  32. DELIMITER ;
  33.  
  34. CALL udp_increase_salaries_by_country('Germany');
  35.  
  36.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement