Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 2.02 KB | None | 0 0
  1. DELIMITER //
  2.  
  3. CREATE PROCEDURE Nafnið_a_procedure()
  4. BEGIN
  5.   SELECT * FROM töfluna_sem_þu_vilt;
  6. END //
  7.  
  8. DELIMITER ;
  9.  
  10.  
  11. CALL Nafnið_a_procedure();
  12.  
  13.  
  14. DELIMITER //
  15.  
  16. CREATE PROCEDURE GetOfficeByCountry(IN countryName VARCHAR(255))
  17.   BEGIN
  18.     SELECT * FROM offices WHERE country = countryName;
  19.   END //
  20. DELIMITER ;
  21.  
  22.  
  23. CALL GetOfficeByCountry("uk");
  24.  
  25.  
  26. DELIMITER //
  27. CREATE PROCEDURE CountOrderByStatus(IN orderStatus VARCHAR(25),OUT total INT)
  28.   BEGIN
  29.     SELECT count(orderNumber) INTO total FROM orders WHERE status=orderStatus;
  30.   END //
  31. DELIMITER ;
  32.  
  33.  
  34. CALL CountOrderByStatus("Shipped",@eiki);
  35.  
  36.  
  37.  
  38.  
  39. DELIMITER $$
  40.  
  41. CREATE PROCEDURE get_order_by_cust(
  42.   IN cust_no INT,
  43.   OUT shipped INT,
  44.   OUT canceled INT,
  45.   OUT resolved INT,
  46.   OUT disputed INT)
  47. BEGIN
  48.  
  49. -- shipped
  50. SELECT
  51.   count(*) INTO shipped
  52. FROM
  53.   orders
  54. WHERE customerNumber = cust_no AND status = 'Shipped';
  55.  
  56. -- canceled
  57. SELECT
  58.   count(*) INTO canceled
  59. FROM
  60.   orders
  61. WHERE
  62.   customerNumber = cust_no AND status = 'Canceled';
  63.  
  64. -- resolved
  65.  
  66. SELECT
  67.   count(*) INTO resolved
  68. FROM
  69.   orders
  70. WHERE customerNumber = cust_no AND status = 'Resolved';
  71.  
  72. SELECT
  73.   count(*) INTO disputed
  74. FROM
  75.   orders
  76. WHERE
  77.   customerNumber = cust_no AND status = 'Disputed';
  78.  
  79. END $$
  80.  
  81. DELIMITER ;
  82.  
  83. CALL get_order_by_cust(141,@s,@c,@r,@d);
  84.  
  85.  
  86. SELECT @s,@c,@r,@d;
  87.  
  88.  
  89.  
  90. DELIMITER $$
  91.  
  92. CREATE PROCEDURE GetCustomerLevel(
  93.     IN p_customerNumber int(11),
  94.     OUT p_customerLevel varchar(10))
  95. BEGIN
  96.   DECLARE creditlim double;
  97.  
  98.   SELECT creditLimit INTO creditlim
  99.   FROM customers
  100.   WHERE customerNumber = p_customerNumber;
  101.  
  102.   IF creditlim > 50000 THEN
  103. SET p_customerLevel = 'PLATINUM';
  104.     ELSEIF(creditlim <= 50000 AND creditlim >= 10000) THEN
  105.       SET p_customerLevel = 'GOLD';
  106.     ELSEIF creditlim < 10000 THEN
  107.       SET p_customerLevel = 'SILVER';
  108.   END IF;
  109. END $$
  110.  
  111. DELIMITER ;
  112.  
  113.  
  114.  
  115.  
  116. DELIMITER //
  117.  
  118. CREATE PROCEDURE Nafnið_a_procedure()
  119. BEGIN
  120.   SELECT * FROM töfluna_sem_þu_vilt;
  121. END //
  122.  
  123. DELIMITER ;
  124.  
  125.  
  126. CALL Nafnið_a_procedure();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement