Sie sind auf Seite 1von 28

Osnove SQL-a

Ciljevi
Poslije kompletiranja ove lekcije trebalo bi se biti u mogunosti da:
Izvravate osnovne SQL iskaze Razlikuju SQL izkaze i SQL*plus komande Razumijete mogunosti SQL SELECT iskaza

Podjela SQL iskaza


DML Data Manipulation Language DDL - Data Definition Language su SQL komande koje omoguavaju kreiranje (create), mijenjanje (alter), i/ili brisanje objekata u bazi podataka sa komandama kao to su CREATE TABLE, DROP TABLE, ALTER TABLE, itd. su SQL komande koje omoguavaju spaavanje, vraanje i/ili vraanje stanja baze podataka nakon neke upotrebe DML SQL komande nad podacima u bazi od/do poetka prijave na bazu podatala. Tu su komande COMMIT, ROLLBACK, SAVEPOINT. su SQL komande koje omoguavaju manipulaciju sa podacima u bazi podataka; komandama kao to su : INSERT, UPDATE, DELETE.

DCL Data Control Language

TC Transaction Control

su SQL komande koje vam omoguavaju dodijeljivanje prava nad objektima baze podataka. To su komande GRANT, REVOKE.

SELECT klauzula FROM klauzula

Osnovni SQL iskaz


je lista jedne ili vie kolona ukidanje duplikata odabiranje svih kolona odabir naziva kolone ispisivanje naziv kolone definisanim imenom alijasa

specificira kolone koje e se prikazati specificira tabele koje sadre kolone koje e se predstaviti predstavljene u SELECT klauzuli.

gdje je:
SELECT DISTINCT * Column Alias FROM table

zaglavlju

sa

specificira tabela u kojoj se nalaze kolone

Sposobnosti SQL iskaza


Selekcija Projekcija

Tabe Tab ela 1

Spajanje

Tabe Tab ela 1

Tabela 1

Tabela 2

Osnovni SELECT iskaz


SELECT identificira KOJE kolone e se koristiti za prikaz FROM identificira iz KOJIH tabela e se itati podaci
SELECT [DISTINCT] {*, column [alias],...} FROM table;

Pisanje SQL iskaza


SQL iskaz nije case sensitive SQL iskaz moe se pisati na vie od jedne linije Kljune rijei ne mogu se pisati skraeno ili odvojeno linijama Obino se klauzule koriste za odvajanje linija Tabovi se koriste za bolje pisanje SQL iskaza, kao i kod veine programiskih jezika

Selektovanje svih kolona


SQL> SELECT * 2 FROM dept;

DEPTNO --------10 20 30 40

DNAME -------------ACCOUNTING RESEARCH SALES OPERATIONS

LOC ------------NEW YORK DALLAS CHICAGO BOSTON

Selektovanje specifinih kolona


SQL> SELECT deptno, loc 2 FROM dept; DEPTNO --------10 20 30 40 LOC ------------NEW YORK DALLAS CHICAGO BOSTON

Default-na poravnanja kolona


Default-a poravnja
LIJEVO: datumi i karakterne vrijednosti DESNO: numerke vrijednosti

Default-i prikazi naziva kolona i podataka


Nazivi kolona: velika slova Podaci u tabeli: case sensitive

Aritmetiki izrazi
Za tipove kolona NUMBER i DATE mogu se koriti aritmetike operacije:
+ - sabiranje - - oduzimanje * - mnoenje / - dijeljenje

Koritenje aritmetikih operatora


SQL> SELECT ename, sal, sal+300 2 FROM emp; ENAME SAL SAL+300 ---------- --------- --------KING 5000 5300 BLAKE 2850 3150 CLARK 2450 2750 JONES 2975 3275 MARTIN 1250 1550 ALLEN 1600 1900 ... 14 rows selected.

Prednosti aritmetikih operatora *


/ + _
Mnoenje i dijeljenje uzimaju prednost nad sabiranjem i oduzimanjem Operatori istog prioriteta izvravaju se s lijeva na desno Zagrade se koriste da bi inicirao prioritet izvrenja operatora. Prvo se izvravaju aritmetiki izrazi u zagradi, a potom izvan nje i tako redom...

Prednost izvrenja operatora


SQL> SELECT ename, sal, 12*sal+100 2 FROM emp; ENAME SAL 12*SAL+100 ---------- --------- ---------KING 5000 60100 BLAKE 2850 34300 CLARK 2450 29500 JONES 2975 35800 MARTIN 1250 15100 ALLEN 1600 19300 ... 14 rows selected.

Koritenje zagrada
SQL> SELECT ename, sal, 12*(sal+100) 2 FROM emp; ENAME SAL 12*(SAL+100) ---------- --------- ----------KING 5000 61200 BLAKE 2850 35400 CLARK 2450 30600 JONES 2975 36900 MARTIN 1250 16200 ... 14 rows selected.

NULL vrijednost je vrijednost koja je nedostupna, koja nije rasporeena, nepoznata ili neprimjenjiva,... NULL vrijednost nije isto to i 0 (nula) ili prazan prostor !
SQL> SELECT ename, job, sal, comm 2 FROM emp; ENAME JOB SAL COMM ---------- --------- --------- --------KING PRESIDENT 5000 BLAKE MANAGER 2850 ... TURNER SALESMAN 1500 0 ... 14 rows selected.

NULL vrijednost

NULL vrijednosti i aritmetiki izrazi


Aritmetiki izrazi koji operiu sa NULL vrijednou kao rezultet prosljeuju NULL vrijednost
SQL> select ename, 12*sal+comm 2 from emp 3 WHERE ename='KING';

ENAME 12*SAL+COMM ---------- ----------KING

Alijasi za kolone
Reimenovanje naziva kolona prilikom pisanja SQL iskaza Koristan je pri izrauvanjima Po pisanju kolone tabele odmah slijedi ime alijasa za kolonu. AS kljuna rije se koristi za razdvanje naziva kolone od naziva alijasa U sluaju dvo ili vie sloenikih naziva alijasa moraju se korisiti - . Nazivi kolona tada postaju case sensitive!

Koritenje alijasa za kolone


SQL> SELECT ename AS name, sal salary 2 FROM emp; NAME SALARY ------------- --------...

SQL> SELECT ename "Name", 2 sal*12 "Annual Salary" 3 FROM emp; Name Annual Salary ------------- ------------...

Operatori spajanja
Operator spajanja spajaju kolone ili karakterne strigove sa drugim kolonama Operator spajanja pie se sa || (ili operator u C programskom jeziku) Kreira rezultantnu kolonu kao jednu kolonu koja sadri vrijednosti svih spojenih kolona

Koritenje operatora spajanja


SQL> SELECT 2 FROM ename||job AS "Employees" emp;

Employees ------------------KINGPRESIDENT BLAKEMANAGER CLARKMANAGER JONESMANAGER MARTINSALESMAN ALLENSALESMAN ... 14 rows selected.

Literal karakterni string


Literal je karaker, broj ili datum ukljuen u SELECT listi Literali: Datum i Karater moraju se pisati sa jednostrukim znacima navoda Svaki karakteni string prikazuje se kao jedan niz za svaki vraeni slog

Koritenje literala karakternih stringova


SQL> SELECT ename 2 3 FROM emp; ||' is a '||job AS "Employee Details"

Employee Details ------------------------KING is a PRESIDENT BLAKE is a MANAGER CLARK is a MANAGER JONES is a MANAGER MARTIN is a SALESMAN ... 14 rows selected.

Dupli slogovi
Default-e postavke za svaki upit je da se prikazuju svi slogovi ukljuujui i duple slogove
SQL> SELECT deptno 2 FROM emp;

DEPTNO --------10 30 10 20 ... 14 rows selected.

Eliminiacija duplih slogova


Eliminisanje duplih sloga vri se putem kljune rijei DISTINCT u SELECT klauzuli
SQL> SELECT DISTINCT deptno 2 FROM emp;

DEPTNO --------10 20 30

SQL i SQL*Plus interpreter


SQL iskazi

Buffer

SQL iskazi

Server

SQL*Plus

SQL*Plus komande Formiranje izvjetaja

Query rezultati

Prikaz strukture tabele


DESCRIBE komanda koristi se za prikazivanje strukture tabele
DESC[RIBE] tablename

SQL> DESCRIBE dept Name Null? ----------------- -------DEPTNO NOT NULL DNAME LOC Type -----------NUMBER(2) VARCHAR2(14) VARCHAR2(13)

Osnove SQL-a

Das könnte Ihnen auch gefallen