Beruflich Dokumente
Kultur Dokumente
Ciljevi
Poslije kompletiranja ove lekcije trebalo bi se biti u mogunosti da:
Izvre ogranienja slogova pri izvrenju upita Sortiranaju slogovi prema speficinom pogledu na vraene podatke iz DB-a
CLARK
30 EMPNO 105 196 201 204 KING ENAME KING-I JONES DEPTNO 30 30 30
CLARK
30
WHERE klauzula
SQL> SELECT ename, job, deptno 2 FROM emp 3 WHERE job='CLERK';
Stringovi i datumi
Karakterni stringovi i datumi su vrijednosti koji se definiu putem jednostrukih znaka navoda Karakterne vrijednosti su case sensitive Default-ni format za datum je DD-MON-YY
SQL> SELECT 2 FROM 3 WHERE ename, job, deptno emp ename = 'JAMES' ;
Operatori poreenja
Operator
= >
Operator
ENAME SAL ---------- --------- >= Donje Gornje ogranienje ogranienje MARTIN 1000 TURNER 1250 WARD 1250 ADAMS 1500 MILLER 1300 <=
Operator IN
Putem operatora IN u WHERE klauzuli vraaju se sve one vrijednosti koje su jednake nekoj od vrijednosti u listi vrijednosti
SQL> SELECT 2 FROM 3 WHERE empno, ename, sal, mgr emp mgr IN (7902, 7566, 7788);
ENAME SAL MGR ---------- --------- --------FORD 3000 7566 SMITH 800 7902 SCOTT 3000 7566 ADAMS 1100 7788
NULL oparator
Blanko znak - , i nula (0) nije isto to i NULL vrijednost Poreenje sa NULL vrijednostima vri se putem IS NULL oparatora poreenja, a ne putem jednakosti sa nula (0) ili blanko znakom ( ), tj. NULL = ili NULL = 0
SQL> SELECT 2 FROM 3 WHERE ename, mgr emp mgr IS NULL;
Vraa TRUE ako su obje poredbene komponente vraaju TRUE Vraa TRUE ako ma koja poredebena komponenta ima TRUE Vraa TRUE ako je slijedio uvijet sa FALSE SELECT FROM WHERE AND empno, ename, job, sal emp sal>=1100 job='CLERK';
Znaenje
Logiki operatori
OR operator
OR operator vraa TRUE ako ma koja poredbena komponenta vraa TRUE
SQL> 2 3 4 SELECT FROM WHERE OR empno, ename, job, sal emp sal>=1100 job='CLERK'; JOB SAL --------- --------PRESIDENT 5000 MANAGER 2850 MANAGER 2450 MANAGER 2975 SALESMAN 1250 CLERK 950
EMPNO ENAME --------- ---------7839 KING 7698 BLAKE 7782 CLARK 7566 JONES 7654 MARTIN ... 7900 JAMES ... 14 rows selected.
NOT operator
SQL> SELECT ename, job 2 FROM emp 3 WHERE job NOT IN ('CLERK','MANAGER','ANALYST');
ename, job, sal emp job='SALESMAN' job='PRESIDENT' sal>1500; JOB SAL --------- --------PRESIDENT 5000 SALESMAN 1250 SALESMAN 1600 SALESMAN 1500 SALESMAN 1250
ORDER BY klauzula
Sortiranje slogova putem ORDER BY klauzule za:
ASCending za vrijednosti od manje ka veoj (default-o podeena vrijednosti pri sortiranju) DESCending za vrijednosti od vee ka manjoj
EMPNO ENAME ANNSAL --------- ---------- --------7369 SMITH 9600 7900 JAMES 11400 7876 ADAMS 13200 7654 MARTIN 15000 7521 WARD 15000 7934 MILLER 15600 7844 TURNER 18000 ... 14 rows selected.
U order by klauzuli navode se sve kolone po kojima se vri sortiranje, razdvojene zarezima Soritranje se moe vriti za sve kolone tabele, pa ak i one koje nisu navede u okviru SELECT klauzule
SQL> SELECT ename, deptno, sal 2 FROM emp 3 ORDER BY deptno, sal DESC; ENAME DEPTNO SAL ---------- --------- --------KING 10 5000 CLARK 10 2450 MILLER 10 1300 FORD 20 3000 ... 14 rows selected.
Kratak pregled
Prikaz podataka sa promjenom redoslijeda kolona u odnosu na kolone tabele Ogranienja u izvrenju upita putem WHERE klauzule
SELECT FROM [WHERE [ORDER BY [DISTINCT] {*| column [alias], ...} table condition(s)] {column, expr, alias} [ASC|DESC]];