P. 1
SQL

SQL

|Views: 2|Likes:
Published by Antonio Vitali

More info:

Published by: Antonio Vitali on Jan 24, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PPT, PDF, TXT or read online from Scribd
See more
See less

01/24/2012

pdf

text

original

SQL

Structured Query Language

IME.GRUPNI UPITI  SELECT [ALL|DINSTICT] nazivi kolona. te primjenu agregatnih funkcija nad pojedinim grupama . nad kojom se mo e zadati agregatna funkcija SELECT STUDENT.ID=UPISNI_LIST.STUDENT_ID GROUP BY STUDENT.redovi izlaznog rezultata select izraza koji u svim kolonama navedenim u GROUP BY izrazu imaju iste vrijednosti povezuju se u istu grupu.STUDENT_ID. PREZIME. IME.STUDENT_ID.STUDENT. PREZIME . dobiveni pomo u select izraza. BROJ=COUNT(SEM) FROM STUDENT INNER JOIN UPISNI_LIST ON STUDENT. agregatne kolone FROM nazivi_tablica|join veze [WHERE uvjetni izraz] [GROUP BY nazivi kolona] [HAVING uvjetni izraz] [ORDER BY sort_izraz] GROUP BY ± odre uje grupe po kojima se dijele izlazni rezultati.

PREZIME HAVING SK_GOD>¶1997/98¶ .ID=UPISNI_LIST. BROJ=COUNT(SEM) FROM STUDENT INNER JOIN UPISNI_LIST ON STUDENT.GRUPNI UPITI  - HAVING uvjetni izraz ograni enje izlaznih rezultata po zadanom uvjetu nakon izvr enja GROUP BY operacije WHERE ± ograni ava izlazne rezultate prije grupiranja (uvjetuje broj redova koji ulaze u grupiranje) HAVING . IME.STUDENT. PREZIME.STUDENT_ID.ograni ava izlazne rezultate poslije grupiranja - - pogre no: SELECT STUDENT.STUDENT_ID. IME.STUDENT_ID GROUP BY STUDENT.

UPDATE ili DELETE upit upit koji uklju uje podupit. INSERT. a rezultati koje da je podupit postaju dio uvjetnog izraza glavnog upita  - . agregatne kolone FROM nazivi_tablica|join veze [WHERE uvjet=subquery] [GROUP BY nazivi kolona] [HAVING uvjet=subquery] najprije se izvr ava podupit. svoj uvjetni dio izraza temelji na rezultatima koji su dobiveni izvr enjem podupita podupit se uklju uje u glavni upit u uvjetnom dijelu izraza (WHERE ili HAVING) SELECT [ALL|DINSTICT] nazivi kolona.PODUPITI - - SELECT izraz uklju en u glavni SELECT.UGNJE - ENI UPITI .

UGNJE 1. IME .PODUPITI PODUPITI LISTE vra a niz rezultata (listu). IME. PREZIME FROM STUDENT WHERE STUDENT_ID IN (SELECT STUDENT_ID FROM UPISNI_LIST WHERE SK_GOD=µ1999¶ AND SEM=1) ORDER BY PREZIME. - ENI UPITI . koju glavni upit koristi u svom uvjetnom izrazu preko predikata liste (IN) SELECT STUDENT_ID.

<>.UGNJE ENI UPITI .PODUPITI 2. listu vrijednosti SELECT STUDENT_ID. IME DELETE UPISNI_LIST WHERE STUDENT_ID=(SELECT STUDENT_ID FROM STUDENT WHERE IME=µX¶ AND PREZIME=µY¶) AND SEM=1 .<«) podupit vra a samo jednu vrijednost. PREZIME FROM STUDENT WHERE MJESTU_ID=(SELECT MJESTO_ID FROM STUDENT WHERE IME=µX¶ AND PREZIME=µY¶) ORDER BY PREZIME. PODUPITI SA OPERATOROM USPOREDBE - - rezultat podupita uklju uje se u glavni upit preko jednog od predikata usporedbe (=. a ne kao pod 1. IME.

podupit se izvodi za svaki podatak glavnog upita podupit nezavisan od glavnog upita i izvodi se samo jednom: - SELECT * FROM STUDENT WHERE MJESTO_ID= (SELECT MJESTO_ID FROM MJESTO WHERE IME_MJESTA=µOSIJEK¶) isto pomo u koreliranog upita: SELECT * FROM STUDENT WHERE µOSIJEK¶=(SELECT IME_MJESTA FROM MJESTO WHERE STUDENT.UGNJE ENI UPITI .MJESTO_ID) - .MJESTO_ID=MJESTO. KORELIRANI PODUPITI - izra unavanje podupita ovisi o glavnom upitu.PODUPITI 3. tj.

PODUPITI PODUPITI SA PREDIKATOM POSTOJANJA (EXISTS.UGNJE  - ENI UPITI .STUDENT_ID) SELECT * FROM MJESTO WHERE EXISTS (SELECT * FROM STUDENT WHERE MJESTO. NOT EXISTS) operator EXISTS ispituje postojanje podataka uz navedene uvjete uvjetni izraz glavnog upita ispituje postojanje podataka koje vra a podupit SELECT STUDENT_ID. IME.STUDENT_ID=UPISNI_LIST.MJESTO_ID=STUDENT. PREZIME FROM STUDENT WHERE NOT EXISTS (SELECT * FROM UPISNI_LIST WHERE STUDENT.MJESTO_ID) .

UNIJA  - upit_1 UNION [ALL] upit_2«ORDER BY sort povezuje rezultate vi e upita u jedinstveni skup rezultata uklanja duplicirane redove rezultata obaju upita ALL .izlazne kolone za upit_1 i upit_2 moraju biti istog tipa a a b 2 3 4 c 4 5 6 a ghi jkl mno b 2 3 4 5 6 c 4 5 6 5 6 b 4 5 6 c 4 5 6 abc def ghi jkl mno abc def ghi T1 T2 SELECT *FROM T1 UNION SELECT* FROM T2 . bez eliminacije duplikata mora vrijediti: .upit_1 i upit_2 imaju jednak broj izlaznih kolona .za prikaz svih redova.

STUDENT_ID INNER JOIN OBR_PROG ON UPISNI_LIST. PREZIME.OBR_PROG_ID SELECT * FROM V_UPISNI_LIST WHERE IME=µX¶ AND PREZIME=µY¶ . MAT_BR.POGLED (VIEW)  KREIRANJE POGLEDA CREATE VIEW ime AS SELECT .OBR_PROG_IME FROM STUDENT INNER JOIN UPISNI_LIST ON STUDENT.STUDENT_ID=UPISNI_LIST.OBR_PROG_ID=OBR_PROG... SK_GOD. SEM.select query [WITH CHECK] CREATE VIEW V_UPISNI_LIST AS SELECT IME.

PREZIME.STUDENT_ID=UPISNI_LIST. PREZIME.UPISANI_SEMESTAR=SEM FROM STUDENT INNER JOIN UPISNI_LIST ON STUDENT.STUDENT_ID=UPISNI_LIST. novi_naziv=atribut CREATE VIEW V_STUDENTI AS SELECT IME.SEM FROM STUDENT INNER JOIN UPISNI_LIST ON STUDENT. SEM AS UPISANI_SEMESTAR FROM STUDENT INNER JOIN UPISNI_LIST ON STUDENT.STUDENT_ID .STUDENT_ID 2.UPISANI_SEMESTAR) AS SELECT IME.STUDENT_ID=UPISNI_LIST. atribut AS novi_naziv CREATE VIEW V_STUDENTI AS SELECT IME.PREZIME.STUDENT_ID 3. PREZIME. CREATE VIEW naziv_pogleda (naziv atributa) AS CREATE VIEW V_STUDENTI (IME.POGLED (VIEW)  PREIMENOVANJE ATRIBUTA POGLEDA 1.

formirane pomo u slo enog upita sa podupitom . unos i brisanje podataka zabranjeno je za poglede: .koji sadr e bar jedan atribut stvoren pomo u agregatne funkcije . UNOS I BRISANJE PODATAKA .formirane kao UNION query .formirane iz vi e od jedne tablice .formirane grupnim upitom (GROUP BY) . pogled podlije e znatnim ograni enjima .za razliku od stvarnih tablica.POGLED (VIEW)  A URIRANJE.formirane pomo u opcije DINSTICT .mijenjanje.

POGLED (VIEW)  UKLANJANJE POGLEDA DROP VIEW naziv_pogleda DROP VIEW V1_STUDENT .

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->