Advertisement
mrzrashed

Lab 3 ABD

Oct 3rd, 2018
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 3.35 KB | None | 0 0
  1. CREATE DATABASE LabMTest;
  2. USE LabMTest;
  3. CREATE TABLE employees (
  4. E_ID VARCHAR(12) NOT NULL PRIMARY KEY,
  5. E_Name VARCHAR(25) NOT NULL,
  6. E_Address VARCHAR(55),
  7. Salary INT NOT NULL,
  8. Department VARCHAR(12)
  9. )
  10. INSERT INTO employees
  11. (E_id, E_Name, E_Address, Salary, Department) VALUES
  12. ('E011','Rakib','Cumilla',64587,'HR'),
  13. ('E012','Rakib','Dhaka',24587,'IT'),
  14. ('E013','Rakiba','Dhaka',34587,'IT'),
  15. ('E014','Rasel','Chittagong',54587,'Management'),
  16. ('E015','Robin','Chadpur',24587,'Sale'),
  17. ('E016','Rubi','Dhaka',14587,'Sale'),
  18. ('E017','Kabir','Chadpur',28587,'Management'),
  19. ('E018','Rothi','Dhaka',28587,'HR');
  20.  
  21. CREATE TABLE Department (
  22. D_id INT NOT NULL PRIMARY KEY,
  23. D_Name VARCHAR(25) NOT NULL,
  24. Location VARCHAR(55)
  25. );
  26. CREATE TABLE Student (
  27. S_ID VARCHAR(25) NOT NULL PRIMARY KEY,
  28. S_Name VARCHAR(55) NOT NULL,
  29. S_address VARCHAR(25),
  30. D_ID INT FOREIGN KEY REFERENCES Department(D_ID)
  31. );
  32.  
  33. CREATE TABLE Course (
  34. C_Code VARCHAR(25) NOT NULL PRIMARY KEY,
  35. C_Name VARCHAR(25) NOT NULL,
  36. Credit INT,
  37. D_ID INT FOREIGN KEY REFERENCES Department(D_ID)
  38. );
  39.  
  40. CREATE TABLE Taken_Course (
  41. S_ID VARCHAR(25) NOT NULL FOREIGN KEY REFERENCES Student(S_ID),
  42. C_Code VARCHAR(25) NOT NULL FOREIGN KEY REFERENCES Course(C_Code),
  43. PRIMARY KEY (S_ID, C_Code)
  44. );
  45.  
  46. INSERT INTO Department (D_ID, D_Name, Location) VALUES  
  47. (11, 'BBA','Shubanbag'),
  48. (15, 'CSE', 'Shukrabad'),
  49. (35, 'SWE', 'Shukrabad'),
  50. (25,'EEE', 'Shubanbag');
  51.  
  52. INSERT INTO Student (S_ID, S_Name, S_address, D_ID) VALUES
  53. ('171-35-1257', 'Jamal', 'Dhaka', '35'),
  54. ('171-35-1258', 'Rakiba', 'Rajshahi', '35'),
  55. ('171-35-1259', 'Rakib', 'Dhaka', '35'),
  56. ('171-35-1260', 'Jamal', 'Rajshahi', '35'),
  57. ('171-11-1261', 'Jamal', 'Khulna', '11'),
  58. ('171-11-1262', 'Rakiba', 'Khulna', '11'),
  59. ('171-11-1263', 'Rakib', 'Barishal', '11'),
  60. ('171-11-1264', 'Jamal', 'Barishal', '11');
  61.  
  62. INSERT INTO Course(C_code, C_Name, Credit, D_ID) VALUES
  63. ('SWE423', 'Database', '4', '35'),
  64. ('SWE425', 'Telecom', '4', '35'),
  65. ('SWE332', 'Network', '4', '35'),
  66. ('SWE426', 'Distributive Computing', '4', '35'),
  67. ('CS452', 'Database', '4', '11'),
  68. ('CS258', 'Network', '4', '11'),
  69. ('CS845', 'Telecom', '4', '11');
  70.  
  71.  
  72.  
  73.  SELECT E_Name FROM employees WHERE Salary = (SELECT MAX(Salary) FROM employees)
  74.  
  75.  
  76.  SELECT * FROM Student
  77.  WHERE D_ID = (SELECT D_ID FROM Department WHERE D_Name = 'SWE') OR (D_ID IN (SELECT C_Code FROM Taken_Course WHERE C_Code = 'Network'))
  78.  
  79.  SELECT E_Name FROM employees
  80.  WHERE Department LIKE 's%'
  81.  
  82.  
  83.  DECLARE @MAX VARCHAR(20)
  84.  DECLARE @MIN VARCHAR(20)
  85.  DECLARE @AVG VARCHAR(20)
  86.  
  87. SELECT @MAX = CAST(MAX(Salary) AS VARCHAR(20)), @MIN = CAST(MIN(Salary) AS VARCHAR(20)),@AVG = CAST(AVG(Salary) AS VARCHAR(20)) FROM employees
  88.  
  89.  print('Maximum Salary: '+CAST(@MAX AS VARCHAR(10))+' Mimimum Salary: '+CAST(@MIN AS VARCHAR(10))+' Avg Salary: '+CAST(@AVG AS VARCHAR(10)))
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  DECLARE @e_salary FLOAT = (SELECT salary FROM employees WHERE salary > 30000 AND E_ID = 'E013')
  98.  SET @e_salary=(@e_salary + 500)
  99.  print(@e_salary)
  100.  
  101.  DECLARE @e_salary2 FLOAT =(SELECT salary FROM employees WHERE salary > 30000 AND E_ID = 'E013')
  102.  IF(@e_salary2> 30000)
  103.  BEGIN
  104.     UPDATE employees
  105.     SET Salary = @e_salary2 - 5000
  106.     WHERE E_ID = 'E013';
  107.  END
  108.  
  109.  ELSE IF (@e_salary2 < 30000)
  110.  BEGIN
  111.     UPDATE employees
  112.     SET Salary = @e_salary2 + 10000
  113.     WHERE E_ID = 'E013';
  114.  END
  115.  
  116.  SELECT salary FROM employees WHERE E_ID = 'E013'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement