Advertisement
Guest User

Untitled

a guest
Mar 18th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.63 KB | None | 0 0
  1. create table odeljenje1(
  2. sifraodelj number(7,0),
  3. grad varchar(20),
  4. nazivodelj varchar(20),
  5. constraint so_pk primary key(sifraodelj)
  6. );
  7.  
  8. create table radni_status1(
  9. sifrars number(7,0),
  10. nazivrs varchar(20),
  11. constraint srf_pk primary key(sifrars)
  12. );
  13.  
  14. create table obrazovni_profil1(
  15. sifraprof number(7,0),
  16. stepenstrucnespreme varchar(20),
  17. nazivprof varchar(20),
  18. constraint sp_pk primary key(sifraprof)
  19. );
  20.  
  21. create table radno_mesto1(
  22. sifrarm number(7,0),
  23. nazivrm varchar(20),
  24. sifraprof number(7,0),
  25. constraint srm_pk primary key(sifrarm),
  26. constraint sp_fk foreign key(sifraprof) references obrazovni_profil1(sifraprof)
  27. );
  28.  
  29. create table zaposleni1(
  30. sifrazap number(7,0),
  31. plata number(7,0),
  32. datrodj date,
  33. ime varchar(20),
  34. prezime varchar(20),
  35. mlb numeric(13,0),
  36. premija numeric(10,0),
  37. datzap date,
  38. sifraprof number(7,0),
  39. sifraodelj number(7,0),
  40. sifrarukov number(7,0),
  41. constraint sz_pk primary key(sifrazap),
  42. constraint spf_fk foreign key(sifraprof) references obrazovni_profil1(sifraprof),
  43. constraint so_fk foreign key(sifraodelj) references odeljenje1(sifraodelj),
  44. constraint sr_fk foreign key(sifrarukov) references zaposleni1(sifrazap)
  45. );
  46.  
  47. alter table zaposleni1 add pol varchar(20);
  48.  
  49. create table angazovanje1(
  50. datod date,
  51. datdo date,
  52. sifrarm number(7,0),
  53. sifrazap number(7,0),
  54. sifrars number(7,0),
  55. constraint do_pk primary key(datod, sifrarm, sifrazap),
  56. constraint srm_fk foreign key(sifrarm) references radno_mesto1(sifrarm),
  57. constraint sz_fk foreign key(sifrazap) references zaposleni1(sifrazap),
  58. constraint srs_fk foreign key(sifrars) references radni_status1(sifrars)
  59. );
  60.  
  61. alter table radni_status1 add constraint rs1 check(nazivrs in('V', 'VI', 'VII'));
  62.  
  63. alter table zaposleni1 add constraint pol1 check(pol in('M', 'Z'));
  64.  
  65. drop table angazovanje1;
  66.  
  67. drop table obrazovni_profil1;
  68. drop table odeljenje1;
  69. drop table radni_status1;
  70. drop table radno_mesto1;
  71. drop table zaposleni1;
  72.  
  73. select * from odeljenje;
  74.  
  75. select nazivrs from radni_status;
  76.  
  77. select distinct sifraodelj from zaposleni;
  78.  
  79. select ime, prezime, datrodj from zaposleni where pol = 'Z';
  80.  
  81. select sifraodelj, nazivodelj from odeljenje where grad = 'Nis' or grad = 'Novi Sad';
  82.  
  83. select sifraodelj, nazivodelj from odeljenje where not grad = 'Beograd';
  84.  
  85. select ime, prezime from zaposleni where plata between 30000 and 50000;
  86.  
  87. select sifrazap, ime, prezime, mlb, datrodj from zaposleni where sifraodelj = 10 and prezime like 'M%';
  88.  
  89. select ime, prezime from zaposleni where premija is not null;
  90. select ime, prezime from zaposleni where premija is null;
  91.  
  92. select ime, prezime, plata, premija from zaposleni where sifraodelj = 40 order by plata;
  93. select ime, prezime, plata, premija from zaposleni where sifraodelj=40 order by premija desc;
  94.  
  95. select prezime, length(prezime), instr(prezime, 'a') from zaposleni;
  96.  
  97. select ime, substr(ime, 1, 3), prezime, concat(ime, prezime), trim('c' from prezime) from zaposleni;
  98.  
  99. select prezime, round((sysdate - datzap)/7, 2) from zaposleni where sifraodelj = 10;
  100.  
  101. select prezime, datzap, round(months_between(sysdate, datzap),2), add_months(datzap, 6),
  102. next_day(datzap, 'FRIDAY'), last_day(datzap) from zaposleni where sysdate - datzap > 10;
  103.  
  104. select sifrazap, ime, prezime, datzap from zaposleni where datzap + interval '10' year < sysdate;
  105.  
  106. select * from zaposleni where datzap + interval '12-6' year to month < sysdate;
  107.  
  108. select prezime, plata,
  109. case when sifraodelj = 10 then plata*1.1
  110. when sifraodelj = 20 then plata*1.2
  111. when sifraodelj = 30 then plata*1.3
  112. else plata end as rezultat
  113. from zaposleni;
  114.  
  115. select ime, prezime, length(ime), length(prezime), nullif(length(ime), length(prezime)) as duzine from zaposleni;
  116.  
  117. select prezime, coalesce(premija, plata) from zaposleni where sifraodelj = 30;
  118.  
  119. select prezime, to_char(datzap, 'DD/MM/YY') as MesecIGOdina from zaposleni;
  120.  
  121. select prezime, ime, to_char(plata, '99,999.00') as plata from zaposleni where sifraodelj = 30;
  122.  
  123. update radno_mesto set nazivrm = 'Dizajner'
  124. where sifraprof = (select sifraprof from obrazovni_profil where nazivprof = 'Srednja SS');
  125.  
  126. update zaposleni set plata = plata+5000
  127. where sifrarukov = (select sifrarukov from zaposleni where ime = 'Janko' and prezime = 'Jankovic');
  128.  
  129. select ime, prezime, round(premija/plata*100, 2) as rezultat from zaposleni
  130. where datzap + interval '15-6' year to month < sysdate;
  131.  
  132. select ime, prezime, datrodj,
  133. case when sign(extract(month from sysdate) - extract(month from datrodj)) = -1 then 'Nije prosao'
  134. when sign(extract(month from sysdate) - extract(month from datrodj)) = 0 and sign(extract(day from sysdate) - extract(day from datrodj)) = -1 then 'Nije prosao'
  135. else 'Prosao je'
  136. end
  137. from zaposleni;
  138.  
  139. --PROVERITI
  140.  
  141. select ime, prezime, concat(substr(ime, 1, 1), substr(prezime, 1, 1)), to_char(datzap, 'dd.MM.yyyy') from zaposleni
  142. where ime like '%mar%' or prezime like '%mar%' or ime like'Mar%' or prezime like 'Mar%';
  143.  
  144. create table mesto(
  145. mestoid number(7,0),
  146. naziv varchar(20),
  147. brstanovnika number(10,0),
  148. postanskibr number(7,0),
  149. constraint mid_pk primary key(mestoid)
  150. );
  151.  
  152. create table student(
  153. studentid number(7,0),
  154. prosek decimal(7,2),
  155. pol varchar(20),
  156. godine number(7,0),
  157. datupisa date,
  158. visinaskolarine number(7,0),
  159. mestoid number(7,0),
  160. constraint sid_pk primary key(studentid),
  161. constraint mid_fk foreign key(mestoid) references mesto(mestoid)
  162. );
  163.  
  164. alter table student add constraint pol_ch check(pol in ('Z', 'M'));
  165.  
  166. insert into mesto values(1, 'Krusevac', 7000, 123);
  167. insert into mesto values(2,'Beograd', 100000, 456);
  168.  
  169. insert into student values(11, 9.75, 'Z', 21, '17-JUN-2015', 15000, 1);
  170. insert into student values(22, 9.75, 'M', 22, '17-JUN-2016', 15000, 2);
  171.  
  172. select * from student where prosek > 9;
  173.  
  174. insert into student values(33, 7.75, 'M', 22, '17-JUN-2016', 15000, 1);
  175.  
  176. alter table student add ime varchar(20);
  177. alter table student add prezime varchar(20);
  178.  
  179. update student set ime = 'Ksenija' where studentid = 11;
  180. update student set prezime = 'Grujic' where studentid = 11;
  181.  
  182. update student set ime = 'Branko' where studentid = 22;
  183. update student set prezime = 'Miladinovic' where studentid = 22;
  184. update student set ime = 'Marko' where studentid = 33;
  185. update student set prezime = 'Markovic' where studentid = 33;
  186.  
  187. select ime, prezime from student where ime like 'M%' and length(prezime) <= 8 and prosek < 8;
  188.  
  189. select * from student where ime like '[^a e i o u]%[a e i o u]';
  190.  
  191. select * from mesto where brstanovnika between 3000000 and 800000000 or postanskibr in(123, 567, 987);
  192.  
  193. --Prikazati ime, prezime i prosecnu ocenu studenata koji su upisali fakultet 2015. godine.
  194. select ime, prezime, prosek from student where extract(year from datupisa) = 2016;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement