Advertisement
cristiano002

Oracle Academy 2

Jun 17th, 2014
298
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 18.54 KB | None | 0 0
  1. FUNKCJE GRUPOWE */
  2.  
  3. /*
  4. AVG - srednia
  5. COUNT - zliczanie wierszy z zapytania
  6. STDEV
  7. SUM
  8. VARIANCE
  9.  
  10.  
  11. Funkcje grupowe tylko w klauzuli SELECT (jak narazie)
  12. */
  13.  
  14. SELECT AVG(salary), MAX(salary), MIN(salary), SUM(salary)
  15. FROM employees
  16. WHERE job_id LIKE '%REP%';
  17.  
  18. SELECT MIN(hire_date), MAX(hire_date)
  19. FROM employees;
  20.  
  21.  
  22. /* COUNT */
  23.  
  24. -- COUNT(*) zliczy wszystko
  25. SELECT COUNT(*)
  26. FROM employees
  27. WHERE department_id = 50;
  28.  
  29. -- COUNT(expr) zliczy tylko rozne od null
  30. SELECT COUNT(commission_pct)
  31. FROM employees
  32. WHERE department_id = 80;
  33.  
  34. SELECT COUNT(commission_pct)
  35. FROM employees;
  36.  
  37. SELECT COUNT(DISTINCT department_id) -- NULLA pomija
  38. FROM employees;
  39.  
  40. SELECT AVG(commission_pct), SUM(commission_pct)/COUNT(*), SUM(commission_pct)/COUNT(commission_pct) -- AVG przeklamuje, bo pomija NULLA
  41. FROM employees;
  42.  
  43. SELECT AVG(NVL(commission_pct, 0))
  44. FROM employees;
  45.  
  46. /* GRUPOWANIE DANYCH */
  47.  
  48. -- jak grupujemy po column, to column moze sie pojawic w SELECT, czyli
  49. -- SELECT column, group_func(column)
  50.  
  51. SELECT department_id, AVG(salary)
  52. FROM employees
  53. GROUP BY department_id;
  54.  
  55. SELECT AVG(salary)
  56. FROM employees
  57. GROUP BY department_id;
  58.  
  59. SELECT job_id, MAX(salary)
  60. FROM employees
  61. GROUP BY job_id;
  62.  
  63. SELECT department_id, job_id, SUM(salary)
  64. FROM employees
  65. WHERE department_id > 40
  66. GROUP BY department_id, job_id
  67. ORDER BY department_id;
  68.  
  69. SELECT department_id, job_id, SUM(salary)
  70. FROM employees
  71. HAVING SUM(salary) > 10000 AND department_id > 40
  72. GROUP BY department_id, job_id
  73. -- HAVING sluzy do tego, by umieszczac warunki na funkcjach grupowych, czyli SUM(salary) > 10000 w WHERE nie zadziala
  74. -- z WHERE do HAVING mozna
  75. -- z HAVING do WHERE NIE MOZNA
  76. ORDER BY department_id;
  77.  
  78. SELECT MAX(AVG(salary))
  79. FROM employees
  80. GROUP BY department_id; -- group by tyczy sie avg(salary)
  81.  
  82. SELECT COUNT(employee_id), SUM(DECODE((TO_CHAR(hire_date,'yyyy')),'1995',1,0)) AS "1995" -- decode zwraca 1 lub 0
  83. FROM employees;
  84.  
  85. ------------------------------ QUIZ 5 -------------------------------------
  86.  
  87. -- 1
  88. -- T,
  89.  
  90. SELECT MAX(salary) "Maximum", MIN(salary) "Minimum", SUM(salary) "Sum", ROUND(AVG(salary)) "Average"
  91. FROM employees;
  92.  
  93. SELECT job_id, MAX(salary) "Maximum", MIN(salary) "Minimum", SUM(salary) "Sum", ROUND(AVG(salary)) "Average"
  94. FROM employees
  95. GROUP BY job_id;
  96.  
  97. SELECT job_id, COUNT(*)
  98. FROM employees
  99. GROUP BY job_id;
  100.  
  101. SELECT job_id, COUNT(*)
  102. FROM employees
  103. WHERE job_id = '&jobid'
  104. GROUP BY job_id;
  105.  
  106. SELECT COUNT(DISTINCT manager_id) AS "Number of Managers"
  107. FROM employees;
  108.  
  109. SELECT (MAX(salary)-MIN(salary)) AS DIFFERENCE
  110. FROM employees;
  111.  
  112. SELECT manager_id, MIN(salary)
  113. FROM employees
  114. HAVING MIN(salary)>6000 AND manager_id IS NOT NULL
  115. GROUP BY manager_id
  116. ORDER BY MIN(salary) DESC;
  117.  
  118. SELECT COUNT(employee_id) TOTAL,
  119.        SUM(DECODE((TO_CHAR(hire_date,'yyyy')),'1995',1,0)) AS "1995",
  120.        SUM(DECODE((TO_CHAR(hire_date,'yyyy')),'1996',1,0)) AS "1996",
  121.        SUM(DECODE((TO_CHAR(hire_date,'yyyy')),'1997',1,0)) AS "1997",
  122.        SUM(DECODE((TO_CHAR(hire_date,'yyyy')),'1998',1,0)) AS "1998"
  123. FROM employees;
  124.  
  125. SELECT job_id "Job", SUM(DECODE(department_id,20,salary,NULL)) AS "Dept 20",
  126.                      SUM(DECODE(department_id,50,salary,NULL)) AS "Dept 50",
  127.                      SUM(DECODE(department_id,80,salary,NULL)) AS "Dept 80",
  128.                      SUM(DECODE(department_id,90,salary,NULL)) AS "Dept 90",
  129.                      SUM(salary) AS "Total"
  130. FROM employees
  131. GROUP BY job_id;
  132.  
  133. ----------------------------------- PRACTICE 6 ---------------------------------
  134.  
  135. /*
  136. NATURAL JOIN (laczy kolumny z dwoch tabel, ktore maja takie same nazwy), jak NAZWY SA TAKIE SAME ALE TYP DANYCH JEST INNY TO BLAD
  137. */
  138.  
  139. SELECT department_id, department_name, location_id, city
  140. FROM departments
  141. NATURAL JOIN locations;
  142.  
  143. SELECT last_name, department_name
  144. FROM employees
  145. NATURAL JOIN departments;
  146.  
  147. /* USING */
  148.  
  149.  
  150. SELECT employee_id, last_name, location_id, department_id
  151. FROM employees
  152. JOIN departments USING (department_id);
  153.  
  154. /* ON */
  155.  
  156. SELECT e.employee_id, e.last_name, e.department_id, d.department_id, d.location_id
  157. FROM employees e
  158. JOIN departments d
  159. ON (e.department_id = d.department_id);
  160.  
  161. SELECT employee_id, last_name, e.department_id, location_id -- PRZY KOLUMNACH KTORE SA WSPOLNE MUSI BYC LITERIA, NIE MA ZNACZENIA CZY BIERZEMY KLUCZ Z e czy z d
  162. FROM employees e
  163. JOIN departments d
  164. ON (e.department_id = d.department_id);
  165.  
  166. SELECT e.last_name, d.department_name, l.city
  167. FROM employees e
  168. JOIN departments d
  169. ON (d.department_id = e.department_id)
  170. JOIN locations l
  171. ON d.location_id = l.location_id;
  172.  
  173. SELECT employee_id, last_name, manager_id
  174. FROM employees;
  175.  
  176. SELECT e.last_name AS PRACOWNIK, m.last_name AS SZEF
  177. FROM employees e JOIN employees m
  178. ON (m.employee_id = e.manager_id)
  179. ORDER BY e.last_name;
  180.  
  181. /* ZLACZENIA NIEROWNOSCIOWE */
  182.  
  183. SELECT e.last_name, e.salary, j.grade
  184. FROM employees e JOIN job_grades j
  185. ON e.salary BETWEEN j.lowest_sal AND j.highest_sal;
  186.  
  187. /* OUTER JOIN */
  188.  
  189. SELECT e.last_name, e.department_id, d.department_name
  190. FROM employees e LEFT OUTER JOIN departments d
  191. ON (e.department_id = d.department_id);
  192.  
  193. SELECT e.last_name, e.department_id, d.department_name
  194. FROM employees e RIGHT OUTER JOIN departments d
  195. ON (e.department_id = d.department_id);
  196.  
  197. SELECT e.last_name, e.department_id, d.department_name
  198. FROM employees e FULL OUTER JOIN departments d
  199. ON (e.department_id = d.department_id);
  200.  
  201. -- ZADANIE
  202. /* Wyswietl nazwy departamentow w ktorych nikt nie jest zatrudniony */
  203.  
  204. /* CROSS JOIN (Iloczyn kartezjanski) */
  205.  
  206. SELECT *
  207. FROM employees
  208. CROSS JOIN departments;
  209.  
  210. ------------------------------------------------- QUIZ 6 -----------------------
  211.  
  212. SELECT location_id, street_address, city, state_province, country_name
  213. FROM locations
  214. NATURAL JOIN countries;
  215.  
  216. SELECT last_name, department_id, department_name
  217. FROM employees
  218. NATURAL JOIN departments;
  219.  
  220. SELECT last_name, job_id, department_id, department_name
  221. FROM employees
  222. NATURAL JOIN departments
  223. NATURAL JOIN locations
  224. WHERE city LIKE 'Toronto';
  225.  
  226. SELECT e.last_name Employee, e.employee_id "EMP#", m.last_name "Manager", m.employee_id "Mgr#"
  227. FROM employees e JOIN employees m
  228. ON (e.manager_id = m.employee_id);
  229.  
  230. SELECT e.last_name Employee, e.employee_id "EMP#", m.last_name "Manager", m.employee_id "Mgr#"
  231. FROM employees e LEFT JOIN employees m
  232. ON (e.manager_id = m.employee_id)
  233. ORDER BY e.employee_id;
  234.  
  235. SELECT e.department_id "DEPARTMENT", c.last_name "EMPLOYEE", e.last_name "COLLEAGUE" -- do poprawy
  236. FROM employees e JOIN employees c
  237. ON (c.department_id = e.department_id)
  238. WHERE e.last_name NOT LIKE c.last_name
  239. ORDER BY c.department_id;
  240.  
  241. SELECT e.last_name, e.job_id, department_name, salary, g.grade "GRADE_LEVEL"
  242. FROM employees e
  243. NATURAL JOIN departments
  244. JOIN job_grades g
  245. ON e.salary BETWEEN g.lowest_sal AND g.highest_sal;
  246.  
  247. SELECT e.last_name, e.hire_date, d.hire_date --97/01/29
  248. FROM employees e
  249. JOIN employees d
  250. ON (e.hire_date < d.hire_date)
  251. WHERE d.last_name LIKE 'Davies'
  252. ORDER BY e.hire_date;
  253.  
  254. SELECT e.last_name, e.hire_date, m.last_name, m.hire_date
  255. FROM employees e
  256. JOIN employees m
  257. ON (e.manager_id = m.employee_id)
  258. WHERE e.hire_date < m.hire_date;
  259.  
  260. /* Wyswietl nazwy departamentow w ktorych nikt nie jest zatrudniony */
  261. SELECT d.department_name, e.last_name
  262. FROM departments d
  263. LEFT JOIN employees e
  264. ON (d.department_id = e.department_id)
  265. WHERE last_name IS NULL;
  266.  
  267.  
  268. -------------------------------  SKLADNIA ORACLE -------------------------------
  269.  
  270. /* zamiast ON jest WHERE */
  271. SELECT e.employee_id, e.last_name, e.department_id, d.department_id, d.location_id
  272. FROM employees e, departments d
  273. WHERE e.department_id = d.department_id;
  274.  
  275. SELECT employee_id, city, department_name
  276. FROM employees e, departments d, locations l
  277. WHERE (d.department_id = e.department_id)
  278.   AND (d.location_id = l.location_id);
  279.  
  280. -- zamiast RIGHT OUTER JOIN     e.department_id (+)= d.department_id
  281. -- + tam gdzie nulle
  282.  
  283. SELECT e.last_name, e.department_id, d.department_name
  284. FROM employees e,departments d
  285. WHERE (e.department_id (+)= d.department_id);
  286.  
  287. -- LEFT OUTER JOIN
  288. SELECT e.last_name, e.department_id, d.department_name
  289. FROM employees e,departments d
  290. WHERE (e.department_id = d.department_id (+));
  291.  
  292. -- UNIA (FULL OUTER JOIN)
  293. SELECT e.last_name, e.department_id, d.department_name
  294. FROM employees e,departments d
  295. WHERE (e.department_id (+)= d.department_id);
  296. UNION ------------------------------------------------------
  297. SELECT e.last_name, e.department_id, d.department_name
  298. FROM employees e,departments d
  299. WHERE (e.department_id = d.department_id (+));
  300.  
  301. SELECT last_name, department_name
  302. FROM employees, departments;
  303.  
  304. ---------------------------- QUIZ 6 (skladnia Oraclowa) ------------------------
  305.  
  306. SELECT l.location_id, l.street_address, l.city, l.state_province, c.country_name
  307. FROM locations l, countries c
  308. WHERE (l.country_id = c.country_id);
  309.  
  310. SELECT e.last_name, e.department_id, d.department_name
  311. FROM employees e, departments d
  312. WHERE (e.department_id = d.department_id);
  313.  
  314. SELECT e.last_name, e.job_id, e.department_id, d.department_name, city
  315. FROM employees e, departments d, locations l
  316. WHERE l.city LIKE 'Toronto';
  317.  
  318. SELECT e.last_name Employee, e.employee_id "EMP#", m.last_name "Manager", m.employee_id "Mgr#"
  319. FROM employees e, employees m
  320. WHERE (e.manager_id = m.employee_id);
  321.  
  322. SELECT e.last_name Employee, e.employee_id "EMP#", m.last_name "Manager", m.employee_id "Mgr#"
  323. FROM employees e, employees m
  324. WHERE (e.manager_id = m.employee_id (+))
  325. ORDER BY e.employee_id;
  326.  
  327. SELECT e.department_id "DEPARTMENT", c.last_name "EMPLOYEE", e.last_name "COLLEAGUE" -- do poprawy
  328. FROM employees e, employees c
  329. WHERE (c.department_id = e.department_id)
  330. AND e.last_name NOT LIKE c.last_name
  331. ORDER BY c.department_id;
  332.  
  333. SELECT e.last_name, e.job_id, d.department_name, e.salary, g.grade "GRADE_LEVEL"
  334. FROM employees e, departments d, job_grades g
  335. WHERE(e.salary BETWEEN g.lowest_sal AND g.highest_sal);
  336.  
  337. SELECT e.last_name, e.hire_date --97/01/29
  338. FROM employees e, employees d
  339. WHERE(e.hire_date > d.hire_date)
  340. AND d.last_name LIKE 'Davies'
  341. ORDER BY e.hire_date;
  342.  
  343. SELECT e.last_name, e.hire_date, m.last_name, m.hire_date
  344. FROM employees e, employees m
  345. WHERE (e.manager_id = m.employee_id)
  346. AND e.hire_date < m.hire_date;
  347.  
  348. /* Wyswietl nazwy departamentow w ktorych nikt nie jest zatrudniony */
  349. SELECT d.department_name, e.last_name
  350. FROM departments d, employees e
  351. WHERE (d.department_id = e.department_id (+))
  352. AND last_name IS NULL;
  353.  
  354. ---------------------------------- PODZAPYTANIA --------------------------------
  355. SELECT *
  356. FROM (
  357.   SELECT d.department_name, e.last_name
  358.   FROM departments d, employees e
  359.   WHERE (d.department_id = e.department_id (+))
  360.   AND last_name IS NULL
  361. );
  362.  
  363.  
  364. SELECT last_name, salary
  365. FROM employees
  366. WHERE salary > 11000;
  367.  
  368. SELECT last_name, salary
  369. FROM employees
  370. WHERE salary > (
  371.                 SELECT salary
  372.                 FROM employees
  373.                 WHERE last_name = 'Abel'
  374.                 );
  375.                
  376.                
  377. SELECT employee_id, last_name
  378. FROM employees
  379. WHERE salary IN (
  380.                 SELECT MIN(salary)
  381.                 FROM employees
  382.                 GROUP BY department_id
  383.                 );
  384.                
  385. /*
  386. IN
  387. ANY
  388. ALL
  389. */
  390.  
  391. SELECT employee_id, last_name, job_id, salary
  392. FROM employees
  393. WHERE salary < ANY (
  394.                 SELECT salary
  395.                 FROM employees
  396.                 WHERE job_id = 'IT_PROG')
  397. AND job_id <> 'IT_PROG';
  398.  
  399.  
  400. SELECT employee_id, last_name, job_id, salary
  401. FROM employees
  402. WHERE salary < ALL (
  403.                 SELECT salary
  404.                 FROM employees
  405.                 WHERE job_id = 'IT_PROG')
  406. AND job_id <> 'IT_PROG';
  407.  
  408.  
  409.  
  410. -- PROBLEM WARTOSCI NULL W PODZAPYTANIACH
  411.  
  412. SELECT emp.last_name
  413. FROM employees emp
  414. WHERE emp.employee_id NOT IN ( -- na NOT IN nie moze byc wartosc NULL)
  415.                           SELECT mgr.manager_id
  416.                           FROM employees mgr
  417.                           WHERE mgr.manager_id IS NOT NULL);
  418.                          
  419. SELECT last_name, salary, department_id
  420. FROM employees
  421. WHERE (salary,department_id) IN
  422.               (
  423.               SELECT MAX(salary),department_id
  424.               FROM employees
  425.               GROUP BY department_id
  426.               )
  427. ORDER BY department_id;
  428.  
  429. SELECT last_name, hire_date
  430. FROM employees
  431. WHERE (job_id, hire_date)
  432.   IN (SELECT job_id, MAX(hire_date)
  433.       FROM employees
  434.       GROUP BY job_id);
  435.   /*    
  436. SELECT a.last_name, a.salary, a.department_id
  437. FROM employees a
  438. WHERE a. salary =  
  439.               (
  440.               SELECT MAX(b.salary)
  441.               FROM employees b
  442.               WHERE a.department_id = b.department_id
  443.               )
  444. ORDER BY department_id;  */    
  445.  
  446.  
  447. ------------------------------------- QUIZ 7 -----------------------------------
  448.  
  449. SELECT e.last_name, e.hire_date
  450. FROM employees e
  451. WHERE e.department_id = (
  452.                       SELECT d.department_id
  453.                       FROM employees d
  454.                       WHERE d.last_name LIKE '&name'
  455.                       )
  456.                       AND e.last_name NOT LIKE '&name';
  457.                      
  458. SELECT employee_id, last_name, salary
  459. FROM employees
  460. WHERE salary > (
  461.                 SELECT AVG(salary)
  462.                 FROM employees
  463.                 )
  464. ORDER BY salary;
  465.  
  466. SELECT employee_id, last_name
  467. FROM employees
  468. WHERE department_id IN (
  469.                       SELECT department_id
  470.                       FROM employees
  471.                       WHERE last_name LIKE '%u%'
  472.                       );
  473.                      
  474. SELECT last_name, department_id, job_id
  475. FROM employees
  476. WHERE department_id IN (
  477.                         SELECT department_id
  478.                         FROM departments
  479.                         WHERE location_id = 1700
  480.                         );
  481.  
  482. SELECT last_name, salary
  483. FROM employees
  484. WHERE manager_id IN (
  485.                     SELECT employee_id
  486.                     FROM employees
  487.                     WHERE last_name LIKE 'King');
  488.                    
  489. SELECT department_id, last_name, job_id
  490. FROM employees
  491. WHERE department_id = (
  492.                       SELECT department_id
  493.                       FROM departments
  494.                       WHERE department_name LIKE 'Executive');
  495.                      
  496. SELECT employee_id, last_name, salary -- i ktorzy pracuja w departamencie z pracownikami ktorzy maja 'u' w nazwisku
  497. FROM employees
  498. WHERE salary > (
  499.                 SELECT AVG(salary)
  500.                 FROM employees
  501.                 )
  502. AND department_id IN (
  503.                       SELECT department_id
  504.                       FROM employees
  505.                       WHERE last_name LIKE '%u%'
  506.                       );
  507. ORDER BY salary;
  508.  
  509. ------------------------------ OPERATORY ZBIOROWE ------------------------------
  510.  
  511. -- UNION bez duplikatow
  512. SELECT  employee_id, job_id
  513. FROM employees
  514. UNION
  515. SELECT employee_id, job_id
  516. FROM job_history;
  517.  
  518. -- UNION ALL z duplikatami (200sty pracownik)
  519. SELECT  employee_id, job_id
  520. FROM employees
  521. UNION ALL
  522. SELECT employee_id, job_id
  523. FROM job_history
  524. ORDER BY employee_id;
  525.  
  526. SELECT  employee_id, job_id
  527. FROM employees
  528. INTERSECT
  529. SELECT employee_id, job_id
  530. FROM job_history
  531. ORDER BY employee_id;
  532.  
  533. SELECT  employee_id, job_id
  534. FROM employees
  535. MINUS
  536. SELECT employee_id, job_id
  537. FROM job_history
  538. ORDER BY employee_id;
  539.  
  540. SELECT department_id
  541. FROM departments
  542. MINUS
  543. SELECT department_id
  544. FROM employees;
  545.  
  546.  
  547. -- kompatybilnosc naglowkow
  548. SELECT location_id, department_name "Department", TO_CHAR(NULL) "Warehoude location"
  549. FROM departments
  550. UNION
  551. SELECT location_id, TO_CHAR(NULL) "Department", state_province
  552. FROM locations;
  553.  
  554. SELECT employee_id, job_id, salary
  555. FROM employees
  556. UNION
  557. SELECT employee_id, job_id, NULL
  558. FROM job_history
  559. ORDER BY employee_id; -- w ORDER tylko kolumny z pierwszego selecta
  560.  
  561. ------------------------------------ JEZYK DML ---------------------------------
  562. /*
  563. INSERT INTO tabela [kolumna]
  564. VALUES (value [, value...]);
  565. */
  566.  
  567. INSERT INTO departments (department_id, department_name, manager_id, location_id)
  568. VALUES (280, 'Public Relations', 100, 1700);
  569.  
  570. SELECT *
  571. FROM departments;
  572.  
  573. CREATE TABLE Test AS
  574. SELECT employee_id, last_name, salary, commission_pct
  575. FROM employees
  576. WHERE last_name LIKE 'King';
  577.  
  578. DELETE Test;
  579.  
  580. SELECT *
  581. FROM Test;
  582.  
  583. INSERT INTO Test(employee_id, last_name, salary, commission_pct)
  584.   SELECT employee_id, last_name, salary, commission_pct
  585.   FROM employees
  586.   WHERE job_id LIKE '%REP%';
  587.  
  588. SELECT *
  589. FROM employees
  590. WHERE employee_id = 113;
  591.  
  592. UPDATE employees
  593. SET department_id = 50
  594. WHERE employee_id = 113;
  595.  
  596. UPDATE Test -- TERAZ MUSI BYC ZATWIERDZENIE, bo TYLKO MY TO WIDZIMY
  597. SET salary = 50;
  598.  
  599. ROLLBACK;
  600. COMMIT;
  601.  
  602. ----------------------------------  DDL ---------------------------------------
  603.  
  604. CREATE TABLE hire_dates
  605.             (id NUMBER(8), hire_date DATE DEFAULT SYSDATE);
  606.            
  607. INSERT INTO hire_dates VALUES (10, to_date('10-10-2012','dd-mm-yyyy'));
  608. SELECT *
  609. FROM hire_dates;
  610.  
  611. INSERT INTO hire_dates VALUES (20, to_date('20-12-2002','dd-mm-yyyy'));
  612. SELECT *
  613. FROM hire_dates;
  614.  
  615. INSERT INTO hire_dates VALUES (100, NULL);
  616. INSERT INTO hire_dates VALUES (150); -- err
  617. INSERT INTO hire_dates VALUES (200,DEFAULT);
  618. INSERT INTO hire_dates(id) VALUES (300);
  619.  
  620. CREATE TABLE employees_lab ( employee_id NUMBER(6) CONSTRAINT emp_employee_id_lab PRIMARY KEY
  621. , first_name VARCHAR2(20)
  622. , last_name VARCHAR2(25)
  623. , email VARCHAR2(25)
  624.   CONSTRAINT emp_email_lab NOT NULL
  625.   CONSTRAINT emp_email_lab_1 UNIQUE
  626. , phone_number VARCHAR2(20)
  627. , hire_date DATE
  628.   CONSTRAINT emp_hire_date_lab NOT NULL
  629. , job_id VARCHAR2(10)
  630.   CONSTRAINT emp_job_lab NOT NULL
  631. , salary NUMBER(8,2)
  632.   CONSTRAINT emp_salary_lab CHECK(salary>0)
  633. , commission_pct NUMBER(2,2)
  634. , manager_id NUMBER(6)
  635.   CONSTRAINT emp_manager_fk_lab REFERENCES employees_lab (employee_id)
  636. , department_id NUMBER(4)
  637.   CONSTRAINT emp_dept_fk_lab REFERENCES
  638.     departments(department_id));
  639.    
  640.  
  641. INSERT INTO employees_lab
  642. VALUES (1,'Jan','Kowalski','jankow@wp.pl','1234567',to_date('10-03-1992','dd-mm-yyyy'),5,6500,0.25,NULL,60);
  643.  
  644. INSERT INTO employees_lab
  645. VALUES (2,'Krystian','Pudlik','kp@wp.pl','7777777',to_date('17-04-1993','dd-mm-yyyy'),2,12000,0.5,1,60);
  646.  
  647. SELECT * FROM employees_lab;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement