Advertisement
Guest User

Untitled

a guest
Oct 18th, 2019
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.99 KB | None | 0 0
  1. ADATB
  2.  
  3. ---------------------------------------------------------------------
  4.  
  5. search: sqldeveloper oracle doksi
  6.  
  7. SELECT
  8. DESCRIBE
  9. ORDER BY (OSZLOPSZAM/ASC/DESC)
  10. WHERE
  11. DECODE
  12. NVL
  13. CONCAT / ||
  14. LENGHT
  15. LOWER
  16. UPPER
  17. REPLACE
  18. SUBSTR
  19. CEIL
  20. FLOOR
  21. FORMAT
  22. TO_CHAR
  23. TO_DATE
  24. DUAL
  25. ADDDATE
  26. SYSDATE
  27. DATE_SUB
  28. DATEDIFF
  29. TRUNC
  30. GROUP BY
  31. COUNT
  32. MAX
  33. MIN
  34. AVG
  35. SUM
  36. CASE when ... then ... END
  37. HAVING
  38. -----------------------------------------------------------------------
  39.  
  40. Natural join = termeszetes osszekapcsolas
  41.  
  42. Ket azonos atributum csak egyszer fog megjelenni.
  43.  
  44. Inner join = belso osszekapcsolas
  45.  
  46. Mindket halmazban van rekordjuk (pl venn diagram metszet)
  47.  
  48. Left join
  49.  
  50. Kivalasztja a metszetet es a bal oldalt. (A U (A metszet B))
  51.  
  52. Right Join
  53.  
  54. Kivalasztja a metszetet es a jobb oldalt. (B U (A metszet B))
  55.  
  56. Full join
  57.  
  58. Kivalasztja mindket oldalt. (A U B)
  59.  
  60. Join tipusok: inner, left, right, full
  61.  
  62.  
  63.  
  64.  
  65. -----------------------------------------------------------------------
  66.  
  67. Lekerdezesek
  68.  
  69. SELECT * from VALLALAT.Z_DOLGOZO where szdatum > to_date(1960 , 'YYYY') and fizetes > 400000;
  70.  
  71. /* Olyan dolgozo aki 1960 utan szuletett, es a fizetese 400k felett van */
  72.  
  73. SELECT * from VALLALAT.Z_DOLGOZO where LOWER(LAKCIM) like '%debrecen%' and LOWER(KNEV||VNEV) like '%o%';
  74.  
  75. /* Olyan dolgozo aki debrecenben lakik, es o betut tartalmaz valamelyik neve */
  76.  
  77. SELECT nem, count(nem) from vallalat.z_dolgozo group by nem;
  78.  
  79. /* Megszamolja hogy hany van az adott nembol */
  80.  
  81. SELECT max(fizetes) from vallalat.z_dolgozo;
  82.  
  83. /* A maximum fizetest dobja ki */
  84.  
  85. select nem, osz, count(*) from vallalat.z_dolgozo group by nem,osz order by count(*);
  86.  
  87. /* A nemekbol az osztalyokat szamolja */
  88.  
  89. select substr(lakcim,5), osz , avg(fizetes) from vallalat.z_dolgozo group by substr(lakcim,5), osz;
  90.  
  91. /* A lakhely (substring az 5.tol) az osztaly es az atlag fizetest dobja ki lakhely es osztaly szerint csoportositva */
  92.  
  93. select vnev||' '||knev, case when fizetes<350000 then 'low' when fizetes between 350000 and 400000 then 'medium' else 'high' END from vallalat.z_dolgozo;
  94.  
  95. /* Case-el kulonszedjuk a fizeteseket */
  96.  
  97. select vnev||' '||knev concat(vnev,concat(' ',knev)), case nem when 'N' then 'Nő' else 'Férfi' END from vallalat.z_dolgozo;
  98.  
  99. /* Nemek szerint csoportositunk case-el */
  100.  
  101. select substr(lakcim,5), nem , avg(fizetes) from vallalat.z_dolgozo group by substr(lakcim,5), nem;
  102.  
  103. /* Lakhely es nemek alapjan az atlag fizetes */
  104.  
  105. select tema, lower(kiado), avg(ar) from konyvtar.konyv group by tema, lower(kiado);
  106.  
  107. /* Melyik kiadonal mennyi az atlagara az adott temanak (lower elhanyagolhato) */
  108.  
  109. select kiado from konyvtar.konyv having avg(ar)>3000 and lower(kiado) like '%o%' group by kiado;
  110.  
  111. /* Olyan kiadok amiknek az atlagaruk 3000 felett van es o betut tartalmaznak */
  112.  
  113. select kiado, avg(ar), avg(oldalszam) from konyvtar.konyv where kiadas_datuma>to_date(2008,'YYYY') having avg(ar)>2200 group by kiado;
  114.  
  115. Olyan kiadok ahol 2008 utani konyv 2200 as atlagar felett talalhato
  116.  
  117. SELECT substr(lakcim,5),nem,avg(fizetes),count(substr(lakcim,5)) from vallalat.z_dolgozo having count(substr(lakcim,5)) > 1 group by substr(lakcim,5) , nem;
  118.  
  119. select vnev,knev,osz,onev from vallalat.z_dolgozo z1, vallalat.z_osztaly z2 where z1.osz=z2.oszam;
  120. select * from vallalat.z_dolgozo z1 inner join vallalat.z_osztaly z2 on z1.osz=z2.oszam;
  121. select * from vallalat.z_dolgozo z1 left join vallalat.z_hozzatartozo z2 on z1.szsz=z2.dszsz;
  122. select * from vallalat.z_osztaly inner join vallalat.z_oszt_helyszinek using (oszam);
  123. select o1.vnev||' '||o1.knev Név, o2.vnev||' '||o2.vnev Főnöknév, o3.orak, o4.pnev, o4.phelyszin from vallalat.z_dolgozo o1 inner join vallalat.z_dolgozo o2 on o1.fonok_szsz=o2.szsz inner join vallalat.z_dolgozik_rajta o3
  124. on o1.szsz=o3.dszsz inner join vallalat.z_projekt o4 on o3.psz=o4.pszam;
  125. select ohelyszin from vallalat.z_osztaly left join vallalat.z_oszt_helyszinek using(oszam);
  126. select * from vallalat.z_dolgozo z1 full outer join vallalat.z_hozzatartozo z2 on z1.szsz=z2.dszsz where z1.fizetes > 400000;
  127. select z2.nem, avg(fizetes) from vallalat.z_dolgozo z1 full outer join vallalat.z_hozzatartozo z2 on z1.szsz=z2.dszsz where z1.fizetes > 400000 group by z2.nem having z2.nem is not null;
  128. select onev,count(*), z1.nem, avg(fizetes) from vallalat.z_dolgozo z1 left join vallalat.z_osztaly z2 on z1.osz=z2.oszam left join vallalat.z_oszt_helyszinek z3 on z2.oszam=z3.oszam where z2.vez_kezdo_datum>to_date(1982,'YYYY') group by onev,z1.nem;
  129. ----
  130. select o1.nev, o3.versenyszam from olimpia.o_versenyzok o1 left join olimpia.o_eredmenyek o2 on o1.azon=o2.versenyzo_azon left join olimpia.o_versenyszamok o3 on o2.versenyszam_azon=o3.azon;
  131. select * from vallalat.z_dolgozo d2 left join vallalat.z_hozzatartozo d3 on d2.szsz=d3.dszsz where fizetes= (select max(fizetes) from vallalat.z_dolgozo d1);
  132. select vnev,knev,fizetes,uj_fizetes from (select vnev, knev, fizetes, fizetes*1.20 uj_fizetes from vallalat.z_dolgozo d1 where nem='F') where uj_fizetes > 400000;
  133. select v.azon, min(helyezes) from olimpia.o_versenyzok v left join olimpia.o_eredmenyek e on v.azon=e.versenyzo_azon group by v.azon;
  134. select avg(arany) from olimpia.o_erem_tabla;
  135. select v.nev, orszag from olimpia.o_erem_Tabla et left join olimpia.o_orszagok o on et.orszag_azon=o.azon left join olimpia.o_versenyzok v on et.orszag_azon=v.orszag_azon where arany >=(select avg(arany) from olimpia.o_erem_tabla)
  136.  
  137.  
  138. ----
  139.  
  140. select d.nev from szerelo.sz_autotipus a
  141. join szerelo.sz_auto b on a.azon=b.tipus_azon join szerelo.sz_szereles c on b.azon=c.auto_azon join szerelo.sz_szerelomuhely d on c.muhely_azon=d.azon where a.Marka='Suzuki' and b.szin='szürke' group by d.nev;
  142.  
  143. select * from szerelo.sz_auto au where au.elso_vasarlasi_ar>(select avg(elso_vasarlasi_ar) from szerelo.sz_auto where elso_vasarlas_idopontja between to_date('1998','YYYY') and to_date('2001','YYYY'));
  144.  
  145.  
  146. select szm.azon, avg(sz.munkavegzes_ara) atlag from szerelo.sz_auto au
  147. left join szerelo.sz_szereles sz on au.azon=sz.auto_azon
  148. left join szerelo.sz_szerelomuhely szm on sz.muhely_azon=szm.azon
  149. where au.elso_vasarlasi_ar>(select avg(elso_vasarlasi_ar) from szerelo.sz_auto where elso_vasarlas_idopontja between to_date('1998','YYYY') and to_date('2001','YYYY')) group by szm.azon;
  150.  
  151.  
  152. select szm.nev, belso.atlag from szerelo.sz_szerelomuhely szm inner join (select muhely.azon, avg(sz.munkavegzes_ara) atlag from szerelo.sz_auto au
  153. left join szerelo.sz_szereles sz on au.azon=sz.auto_azon
  154. left join szerelo.sz_szerelomuhely muhely on sz.muhely_azon=muhely.azon
  155. where au.elso_vasarlasi_ar>(select avg(elso_vasarlasi_ar) from szerelo.sz_auto where elso_vasarlas_idopontja between to_date('1998','YYYY') and to_date('2001','YYYY')) group by szm.azon) belso on szm.azon=belso.muhely.azon;
  156.  
  157.  
  158. -------------
  159.  
  160.  
  161.  
  162. create table nev (atrbnev adattipus modositoszo[null|not null] [default érték])
  163. constraint dol_pk primary key (att1,[att2....])
  164. constraint dol_fk foreign key (att1) references tablanev(tabla attributum)
  165. create table dolgozok AS select * from vallat.z_dolgozok;
  166.  
  167. alter table tablanev add nev tipus modositoszo;
  168. alter table tablanev modify tablanev ujtipus modositoszo;
  169. alter table tablanev modify (tablenev tipus not null, tablanev1 tipus default valami); <--- pl
  170. alter table tablanev drop column attrb;
  171. alter table tablanev rename column attrnev ujattrnev;
  172. alter table tablanev rename to ujtablanev;
  173. alter table tablanev drop constraint primary key/foreign key (keynev);
  174.  
  175. drop table tablanev [purge] [cascade constraints] // purge=vegleges torles, cascade constraints=ra hivatkozo kulcsokat kitoroljuk
  176.  
  177. unique - egyedi ertek csak 1 lehet belole
  178.  
  179. pl
  180.  
  181. create teable test ( oszlop 1 varchar2(10), constraint oszlop1_uq unique(oszlop1) );
  182. oszlop1 egyedi ertekeket tartalmaz
  183.  
  184.  
  185. create table szamok ( szam number, constraint szam_chk check(szam<5000) );
  186. szam oszlopba 5000-nel nagyobb ertek jo
  187.  
  188.  
  189. beszuras:
  190.  
  191. insert into tablanev values ( ertek1 ertek2 ... , ertekN );
  192. insert into tablanev (oszlop1, oszlop2) values (ertek1, ertek2);
  193. insert into tablanev (oszlop1,oszlop2,oszlopN) SELECT ertek1, ertek2, ertekN from tabla2 where/having stb..
  194.  
  195. torles:
  196. delete from tablanev where feltétel;
  197.  
  198. pl
  199.  
  200. delete from jutalom where dszsz = '11112';
  201. delete from tablanev where exist (select ....);
  202. delete from tablanev where id in (select ...);
  203.  
  204. csere:
  205. update tablanev set oszlop1=kifejezes1, oszlop2=kifejezes2, oszlopn=kifejezesn where feltetel
  206. update tablanev set oszlop1=select...) where feltetel;
  207. update tabla1 set oszlop1=(select o1 from tabla2 where tabla1.id=tabla2.id);
  208. merge into tabla1 using (select * from tabla2) on tabla1.id=tabla2.id when matched then (update/insert/delete) delete where oszlop2=' ' when not matched then insert (oszlop1,oszlop2) values (érték1,érték2) where (feltétel);
  209.  
  210. TECHONTHENET.COM doksi helyett
  211.  
  212. commit comment ' '; modositasok veglegesitese
  213.  
  214. rollback; 1 committal visszabb gorget
  215. rollback to savepoint sp1; savepointra visszagorget
  216. savepoint sp ; mentesi pont letrehozasa
  217.  
  218. acid
  219.  
  220. atomicity(atomossag)
  221. consistency(konzisztencia)
  222. isolation(elkulonites)
  223. durability(tartossag)
  224.  
  225.  
  226. -----------
  227.  
  228.  
  229. utolsogyak
  230.  
  231. -------------------------------------------------
  232. s= | | | | | | |
  233. -------------------------------------------------
  234.  
  235. insert into dolgozo values (s.NEXTVAL , 10000),
  236. id,712
  237.  
  238.  
  239. create or replace view z_dolgozo_nezet
  240. as select * from vallalat.z_dolgozo;
  241.  
  242. select * from z_dolgozo_nezet;
  243.  
  244. update z_dolgozo_nezet
  245. set fizetes= fizetes*1.2
  246. where osz=1;
  247.  
  248.  
  249.  
  250. create or replace synonym jn for jutalom_nezet; --> szinoníma
  251.  
  252.  
  253.  
  254. create sequence seq_1 //szekvencia létrehozása
  255. minvalue 1
  256. maxvalue 100
  257. start with 10
  258. increment by 2
  259. cache 20;
  260.  
  261. select seq_1.nextval from dual;
  262.  
  263. grant/revoke jogok on objektumok to/from felhasznalo;
  264.  
  265. //----------------------------------------------------------------------------------//
  266.  
  267. create or replace view jutalom_nezet
  268. as select * from jutalom;
  269.  
  270. select * from z_dolgozo_nezet;
  271.  
  272. update jutalom_nezet
  273. set osszeg= osszeg*1.2
  274. where dszsz=11112;
  275.  
  276. create or replace synonym jn for jutalom_nezet;
  277.  
  278. select * from jn;
  279.  
  280. create sequence seq_1
  281. minvalue 1
  282. maxvalue 100
  283. start with 10
  284. increment by 2
  285. cache 20;
  286.  
  287. select seq_1.nextval from dual;
  288.  
  289.  
  290.  
  291. create table z_szabadsag(
  292. dszsz char(11),
  293. napok number,
  294. mettol date default sysdate not null,
  295. meddig date,
  296.  
  297. constraint szabadsag_pk PRIMARY KEY (dszsz, mettol, meddig),
  298. constraint szabadsag_fk foreign key (dszsz) references z_dolgozo(szsz),
  299. constraint napok_chk check (napok between 1 and 40),
  300. constraint mettol_chk check (mettol<meddig)
  301. );
  302.  
  303. select pnev, phelyszin from vallalat.z_projekt;
  304.  
  305. select vnev||' '|| knev as nev, nvl(count(*),0) from vallalat.z_dolgozo do
  306. left join vallalat.z_hozzatartozo dh
  307. on do.szsz = dh.dszsz
  308. group by vnev||' '|| knev;
  309.  
  310. create table z_dolgozik_rajta as select * from vallalat.z_dolgozik_rajta;
  311.  
  312. select pszam from vallalat.z_projekt
  313. where pnev = 'Komputerizáció';
  314.  
  315. update z_dolgozik_rajta
  316. set orak = orak+3
  317. where psz= (select pszam from vallalat.z_projekt
  318. where pnev = 'Komputerizáció');
  319.  
  320. select oszam from VALLALAT.Z_OSZTALY
  321. where onev= 'Kutatás';
  322.  
  323. delete from z_dolgozo
  324. where osz = (select oszam from VALLALAT.Z_OSZTALY
  325. where onev= 'Kutatás');
  326.  
  327. rollback;
  328.  
  329. select min(szdatum) from vallalat.z_dolgozo;
  330.  
  331. select * from vallalat.z_dolgozo
  332. where szdatum=(select min(szdatum) from vallalat.z_dolgozo);
  333.  
  334. grant select on z_dolgozik_rajta to U_L2K10F;
  335.  
  336. select vnev||' '||knev, count(*) from vallalat.z_dolgozo dol
  337. inner join vallalat.z_dolgozik_rajta dr
  338. on dol.szsz=dr.dszsz
  339. group by vnev||' '||knev;
  340.  
  341. create or replace view karacsony as
  342. select vnev||' '||knev név, count(*)ajándékok from vallalat.z_dolgozo dol
  343. inner join vallalat.z_dolgozik_rajta dr
  344. on dol.szsz=dr.dszsz
  345. group by vnev||' '||knev;
  346.  
  347. select * from karacsony;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement