際際滷

際際滷Share a Scribd company logo
1
2
GRUP FONKSYONLARI
Oracle sql ileri d端zey ilevlerinde grup fonksiyonlar脹
be ayr脹 fonksiyondan oluur. Bunlar:
a. Count Fonksiyonu,
b. Sum Fonksiyonu,
c. Avg Fonksiyonu,
d. Min Fonksiyonu,
e. Max Fonksiyonudur.
3
a. COUNT FONKSYONU
Bu fonksiyon, grup fonksiyonunun kapsam脹nda yer alan
sat脹rlar脹n toplam adedini tespit etmek i巽in kullan脹l脹r.
Count fonksiyonu kullan脹m脹 u ekildedir:
COUNT ( * | s端tun_ad脹 [ ALL | DISTINCT ] )
Not: (*) Y脹ld脹z iareti tablodaki t端m sat脹rlar脹 alacakt脹r. NULL(bo) deerler de
buna dahildir. (|) iareti veya anlam脹nda kullan脹l脹r. ALL anahtar kelimesi
kullan脹l脹rsa t端m s端tunlar se巽ilecek ama NULL deerler d脹ar脹da kalacakt脹r,
DISTINCT anahtar kelimesi kullan脹ld脹脹nda ise sadece 旦zg端n deerler se巽ilir
,NULL deerler yine d脹ar脹da kal脹r.
4
Count Fonksiyonu rnekleri
rnek 1: SELECT COUNT ( * ) FROM BOTE ;
Bu SQL sorgusu, bize BOTE tablosunda var olan t端m
sat脹rlar脹n toplam say脹s脹n脹 d旦nd端recektir. Y脹ld脹z
iareti, tablodaki t端m sat脹rlar脹n gruba dahil edilmesini
salam脹t脹r.
rnek 2: SELECT COUNT (ALL Sutun2 ) FROM BOTE ;
Bu SQL sorgusu ise, sadece sutun2 s端tununu ele al脹r ve
NULL deer bar脹nd脹rmayan her bir sat脹r脹 eklemek suretiyle
bize toplam sat脹r say脹s脹n脹 d旦nd端r端r.
5
Not: Y脹ld脹z iareti (*) ile DISTINCT veya ALL anahtar kelimelerini bir
arada kullanamazs脹n脹z. 端nk端 y脹ld脹z iareti NULL deerleri de gruba
d但hil edecektir ancak DISTINCT veya ALL anahtar kelimeleri NULL
deerlerin grup d脹脹nda tutulmas脹n脹 temin etmektedirler.
Count Fonksiyonu rnekleri
rnek 3: SELECT COUNT (DISTINCT sutun2) FROM
BOTE ;
Bu SQL sorgusu, her bir farkl脹 ismi sadece bir kere sayacakt脹r,
zira DISTINCT kelimesi kullan脹lm脹t脹r. rnein Ali ismi
sadece bir kere say脹lm脹t脹r, dier Ali isimleri say脹y脹
artt脹rmam脹t脹r. Oysa ki ALL anahtar kelimesini kullansayd脹k
Ali isimleri ve dier t端m isimler NULL olmad脹klar脹 s端rece
toplama dahil olacaklard脹.
6
b. SUM FONKSYONU
Bu fonksiyon, say脹sal t端rde veri bar脹nd脹ran s端tunlardaki deerleri
toplayarak sonucu d旦nd端ren bir fonksiyondur. Sadece say脹sal
deerlerle 巽al脹脹r.
Sum fonksiyonunun kullan脹m脹 u ekildedir:
SUM (ALL | DISTINCT s端tun_ad脹)
Not: ALL anahtar kelimesi kullan脹ld脹脹 zaman, s端tundaki t端m
say脹sal veriler toplan脹r ve NULL(bo) deerler hesaba kat脹lmaz.
DISTINCT anahtar kelimesi kullan脹l脹rsa, her bir say脹sal deerin
sadece tek 旦rnei al脹narak toplama yap脹l脹r.
7
Sum fonksiyonu rnekleri
rnek 1: SELECT SUM (ALL not_oran) FROM BOTE ;
rnek 2: SELECT SUM (DISTINCT not_oran) FROM
BOTE ;
BOTE tablosunda kayd脹 bulunan t端m kiilerin not
oranlar脹n脹 toplay脹p sonucu veren bir SQL sorgusu yazd脹k.
NULL olmayan t端m veriler bu toplama dahil edilecektir.
 DISTINCT anahtar kelimesi kullan脹l脹rsa not oran脹
s端tunundaki bir deer birden 巽ok sat脹rda olsa bile
sadece bir kere toplama dahil edilirler.
8
c. AVG FONKSYONU
Bu fonksiyon say脹sal t端rde veri bar脹nd脹ran bir s端tundaki
deerlerin ortalama deerini almak 端zere kullanaca脹m脹z bir
fonksiyondur. Ortalamay脹 almak i巽in, 旦nce NULL olmayan t端m
say脹sal deerler toplan脹r ve 巽脹kan sonu巽 hesaba dahil edilen
sat脹rlar脹n toplam say脹s脹na b旦l端n端r.
AVG Fonksiyonu u ekilde kullan脹l脹r:
AVG (ALL | DISTINCT s端tun_ad脹)
9
c. AVG FONKSYONU
ALL anahtar kelimesi kullan脹lmas脹 durumunda, belirtilen
s端tundaki NULL veri i巽ermeyen t端m deerler toplan脹r ve sonu巽
bu toplama ilemine dahil edilen sat脹rlar脹n adedine b旦l端n端r.
DISTINCT anahtar kelimesinin kullan脹lmas脹 durumunda ise,
旦zg端n say脹lar toplanarak 巽脹kan sonu巽 bu toplama ilemine
katk脹da bulunan sat脹rlar脹n toplam adedine b旦l端nerek sonu巽 elde
edilir. Burada kullanaca脹m脹z s端tun_ad脹 parametresi, mutlaka
say脹sal t端rde veri bar脹nd脹ran bir s端tuna ait olmal脹d脹r. AVG
fonksiyonu dier veri t端rleriyle hata verecektir.
10
rnek 1 : SELECT AVG (ALL notlar) FROM BOTE ;
AVG fonksiyonu rnekleri
 BOTE tablosundaki notlar s端tunu NULL deer ta脹mayan
sat脹rlardaki t端m not deerleri toplanm脹t脹r. Ard脹ndan 巽脹kan
sonu巽, bu toplama ilemine dahil edilen sat脹rlar脹n toplam
adedine b旦l端nm端t端r. B旦ylece ortalama deer elde
edilmitir.
rnek 2 : SELECT AVG (DISTINCT notlar) FROM
BOTE ;
 Bu SQL sorgusuyla, NULL olmayan ve sadece 旦zg端n
olan notlar s端tunundaki say脹sal deerler
toplanm脹, 巽脹kan sonu巽 ise yine bu toplamlara dahil
edilen sat脹r adedine b旦l端nm端t端r.
11
AVG fonksiyonu rnekleri
rnek 3 : SELECT AVG (DISTINCT notlar) FROM
BOTE ;
Bu SQL sorgusu ile, 旦zg端n notlar脹n toplam脹 al脹nm脹 ve 巽脹kan
sonu巽 da toplama ilemine dahil edilen sat脹rlar脹n adedine
b旦l端nm端t端r. Hesaplanmayan NULL deerler dahil
edilmemitir. Bunu baka bir bi巽imde ifade edecek olursak,
notu "70" olan 端巽 kiiye ait kay脹t bulunmaktad脹r. Ancak sadece
bir tane "70" deeri hesaba kat脹lm脹t脹r. Bu ekilde sadece
旦zg端n olan say脹sal deerler (notlar) toplanm脹 ve ortalama
al脹n脹rken de sadece toplama ilemine dahil olan sat脹rlar脹n
say脹s脹 ile b旦lme ilemi yap脹lm脹t脹r.
12
d. MIN FONKSYONU
Say脹sal t端rde veri i巽eren bir s端tundaki en k端巽端k deeri tespit
etmek i巽in kullan脹l脹r. Belirtmi olduumuz s端tundaki t端m
verileri tek seferde okuyan MIN fonksiyonu, bize okuduu
deerler i巽inde en k端巽端k olan脹 sonu巽 olarak d旦nd端r端r.
MIN Fonksiyonu u ekilde kullan脹l脹r:
MIN (s端tun_ad脹)
Not: MIN fonksiyonu i巽in dikkat etmemiz gereken 旦nemli bir
fark bulunmaktad脹r. AVG ve SUM fonksiyonlar脹 sadece say脹sal
veri t端r端yle 巽al脹abilirken, MIN fonksiyonu tarih-saat, karakter
ve say脹sal veri t端rleriyle 巽al脹abilmektedir.
13
MIN fonksiyonu rnekleri
rnek 1: SELECT MIN (giris_tarih) FROM BOTE;
 Bu SQL sorgusu, BOTE tablosunda yer alan ve
旦rencilerin okula giri tarihlerini bar脹nd脹ran
giris_tarih s端tunundaki en k端巽端k tarih-saat deerini
d旦nd端rmektedir.
rnek 2: SELECT MIN (notlar) FROM BOTE;
 Bu sorgu ise, BOTE tablosundaki 旦renci
notlar脹n脹 bar脹nd脹ran notlar s端tunundaki en d端端k
say脹sal veriyi d旦nd端rmektedir.
14
e. MAX FONKSYONU
Bu fonksiyon parametre olarak verdiimiz bir s端tundaki en
b端y端k say脹sal deeri bulmak i巽in kullan脹l脹r. MAX fonksiyonu
ayr脹ca tarih -saat ve karakter veri t端rleriyle de
巽al脹abilmektedir.
MAX fonksiyonun kullan脹m脹 u ekildedir:
MAX (s端tun_ad脹)
Buradaki s端tun_ad脹 parametresi, say脹sal, tarih - saat veya
karakter veri t端r端nde bilgi bar脹nd脹ran bir s端tunun ad脹
olmal脹d脹r.
15
MAX Fonksiyonu rnekleri
rnek 1: SELECT MAX (notlar) FROM BOTE ;
Bu SQL sorgusu, tahmin edeceiniz 端zere, SALARY
s端tununda bulunan en y端ksek maa脹 d旦nd端recektir.
rnek 2: SELECT MAX (giris_tarih) FROM BOTE ;
 Bu sorguyla, BOTE tablosu i巽inde i balama
tarihlerinin bar脹nd脹ran giris_tarih s端tunundaki en
y端ksek deeri elde etmi oluyoruz. Bir baka
deyile, okula en son balayan kiinin giri tarihini
旦reniyoruz.
16
DML (DATA MANIPULATION LANGUAGE-VER
DE帖TRME DL) KOMUTLARI
Burada g旦receimiz komutlar bir tabloya veri
eklemek, silmek veya tabloyu g端ncellemek i巽in
kullan脹lacakt脹r. Bunlar:
a. INSERT
b. DELETE
c. UPDATE
17
a. INSERT KOMUTU
Tablolara veri eklemek i巽in kullanaca脹m脹z komut olan
INSERT, her seferinde tek bir sat脹ra veri ekleyebilecei gibi,
birden 巽ok sat脹ra veri ekleyecek bi巽imde de 巽al脹t脹r脹labilir.
Ancak Oracle SQL, prosed端r tabanl脹 bir dil olmad脹脹 i巽in siz
sadece belirli kriterleri bildirip ekleme yap脹lmas脹 i巽in kodu
巽al脹t脹r脹rs脹n脹z.
Oracle lig Database Server, bu eklemelerin nas脹l ve hangi
s脹rayla yap脹laca脹na kendi karar verir ve bu ama巽la da execution
plan (巽al脹t脹rma plan脹) 旦zelliini kullan脹r.
18
Insert Komutu rnekler
 INSERT ilemini farkl脹 yollarla ger巽ekletirebiliriz, bu
y旦ntemlerden birisi eklenmek istenen verinin elle
yaz脹lmas脹d脹r. B旦yle bir INSERT ileminin s旦z dizimi u
ekildedir:
INSERT INTO tablo_ad脹 *s端tun_ad脹1, s端tun_ad脹2, ..+
VALUES (veril, veri2, ...) ;
 Bir baka y旦ntem ise, ekleyeceimiz sat脹r脹n hangi
s端tunlar脹na veri ekleyeceimizi biliyorsak, sadece bu
s端tunlar脹 ve eklenecek olan deerlerini yazarak 聴NSERT
ilemini ger巽ekletirmektir.
INSERT INTO bolum(bolum_adi, bolum_ID) VALUES (B旦te', 5) ;
19
COMMIT VE ROLLBACK
DML komutlar脹n脹n kullan脹lmas脹n脹n ard脹ndan, eer hatal脹 bir
veri girii, g端ncellemesi veya silme ilemi ger巽ekletiyse, bu
ilemi ROLLBACK komutuyla geri alabilirsiniz. ROLLBACK
komutu, bir 旦nceki commit ileminden sonra yap脹lan t端m
deiiklikleri geri alacakt脹r. rnein, eer SQL*Plus veya SQL
Developer program脹n脹 a巽t脹ktan sonra hi巽 INSERT ilemi
yapmad脹ysan脹z, ger巽ekletireceiniz ilk INSERT ileminden
sonra ROLLBACK yaz脹p 巽al脹t脹r脹rsan脹z INSERT ilemini geri
alabilirsiniz.
20
COMMIT VE ROLLBACK
聴NSERT al脹t脹rmalar脹n脹 SQL*Plus program脹n脹 kullanarak ger巽ekletirdiyseniz
komut sat脹r脹nda ROLLBACK yaz脹n ve klavyede Enter tuuna bas脹n.
21
b. DELETE KOMUTU
Bir tablodan sat脹r silmek istediimiz zaman DELETE komutunu
kullanmam脹z gerekir. Ancak DELETE komutunu kullan脹rken
dikkatli olmak gerekir, 巽端nk端 tek bir DELETE komutuyla
tablodaki t端m verileri silmek de m端mk端nd端r.
DELETE komutunun s旦z dizimi u ekildedir:
DELETE FROM tablo_ad脹 [WHERE ko帳ul ] ;
22
DELETE ve FROM komutlar脹 birlikte kullan脹l脹rlar ve
zorunludurlar. 聴巽inden sat脹r silmek istediimiz tabloyu tablo_ad脹
parametresinde belirtmemiz gerekir, WHERE koul t端mcesine de
dikkat etmemiz gerekir, burada belirttiimiz arta uyan t端m sat脹rlar
tablodan silinecektir. Eer WHERE t端mcesinde belirttiiniz arta
uygun sat脹r bulunamazsa bir hata almazs脹n脹z, sadece silme ilemi
ger巽eklemez.
DELETE KOMUTU RNEK
rnek 1:DELETE FROM bolumler WHERE bolum_ID = 5 ;
Bu SQL sorgusu, bolumler tablosundaki bolum_ID deeri 5olan sat脹rlar脹
siler. Eer sonucu g旦r端nt端lemek isterseniz bir sorgu yazabilirsiniz:
SELECT * FROM bolumler ;
23
c. UPDATE KOMUTU
Eer bir tablodaki var olan verileri deitirmek istersek,
kullanmam脹z gereken komut UPDATE olacakt脹r.
UPDATE komutunun s旦z dizimi 旦yledir:
UPDATE tablo_ad脹 SET s端tun_ad脹1 = deger1 [, s端tun_ad脹2 =
deger2, ... 1 WHERE ko帳ul ;
24
Update Komutu Kullan脹m脹
UPDATE komutunun hemen ard脹ndan 端zerinde deiiklik
yapaca脹m脹z tablonun ad脹n脹 belirtiyoruz. SET komutu ise
se巽tiimiz s端tunlara yeni deerleri girmemizi salayacak
olan dier zorunlu komuttur. SET komutunun ard脹ndan
tablodaki s端tunlar脹n adlar脹n脹 yaz脹p bir eitlik (=) iaretiyle
yeni deeri belirtiyoruz. Deiiklik yapmak istediimiz her
bir s端tunu ve yeni deeri bu ekilde s脹rayla yaz脹p devam
edebiliriz. Son olarak da koulumuzu belirtmek 端zere
WHERE t端mcesini kullan脹yoruz.
25
Update Komutu rnei
rnek 1: UPDATE BOTE SET not = 70 WHERE
ogrenci_ID = 191 ;
 ogrenci_ID numaras脹 191 olan Kaz脹m ahin isimli
旦rencinin notunu 70 olarak deitirmi bulunuyoruz.
UPDATE ileminin sadece bu 巽al脹an 端zerinde
ger巽ekletiine dikkat etmek gerekir.
26

More Related Content

Sunu

  • 1. 1
  • 2. 2 GRUP FONKSYONLARI Oracle sql ileri d端zey ilevlerinde grup fonksiyonlar脹 be ayr脹 fonksiyondan oluur. Bunlar: a. Count Fonksiyonu, b. Sum Fonksiyonu, c. Avg Fonksiyonu, d. Min Fonksiyonu, e. Max Fonksiyonudur.
  • 3. 3 a. COUNT FONKSYONU Bu fonksiyon, grup fonksiyonunun kapsam脹nda yer alan sat脹rlar脹n toplam adedini tespit etmek i巽in kullan脹l脹r. Count fonksiyonu kullan脹m脹 u ekildedir: COUNT ( * | s端tun_ad脹 [ ALL | DISTINCT ] ) Not: (*) Y脹ld脹z iareti tablodaki t端m sat脹rlar脹 alacakt脹r. NULL(bo) deerler de buna dahildir. (|) iareti veya anlam脹nda kullan脹l脹r. ALL anahtar kelimesi kullan脹l脹rsa t端m s端tunlar se巽ilecek ama NULL deerler d脹ar脹da kalacakt脹r, DISTINCT anahtar kelimesi kullan脹ld脹脹nda ise sadece 旦zg端n deerler se巽ilir ,NULL deerler yine d脹ar脹da kal脹r.
  • 4. 4 Count Fonksiyonu rnekleri rnek 1: SELECT COUNT ( * ) FROM BOTE ; Bu SQL sorgusu, bize BOTE tablosunda var olan t端m sat脹rlar脹n toplam say脹s脹n脹 d旦nd端recektir. Y脹ld脹z iareti, tablodaki t端m sat脹rlar脹n gruba dahil edilmesini salam脹t脹r. rnek 2: SELECT COUNT (ALL Sutun2 ) FROM BOTE ; Bu SQL sorgusu ise, sadece sutun2 s端tununu ele al脹r ve NULL deer bar脹nd脹rmayan her bir sat脹r脹 eklemek suretiyle bize toplam sat脹r say脹s脹n脹 d旦nd端r端r.
  • 5. 5 Not: Y脹ld脹z iareti (*) ile DISTINCT veya ALL anahtar kelimelerini bir arada kullanamazs脹n脹z. 端nk端 y脹ld脹z iareti NULL deerleri de gruba d但hil edecektir ancak DISTINCT veya ALL anahtar kelimeleri NULL deerlerin grup d脹脹nda tutulmas脹n脹 temin etmektedirler. Count Fonksiyonu rnekleri rnek 3: SELECT COUNT (DISTINCT sutun2) FROM BOTE ; Bu SQL sorgusu, her bir farkl脹 ismi sadece bir kere sayacakt脹r, zira DISTINCT kelimesi kullan脹lm脹t脹r. rnein Ali ismi sadece bir kere say脹lm脹t脹r, dier Ali isimleri say脹y脹 artt脹rmam脹t脹r. Oysa ki ALL anahtar kelimesini kullansayd脹k Ali isimleri ve dier t端m isimler NULL olmad脹klar脹 s端rece toplama dahil olacaklard脹.
  • 6. 6 b. SUM FONKSYONU Bu fonksiyon, say脹sal t端rde veri bar脹nd脹ran s端tunlardaki deerleri toplayarak sonucu d旦nd端ren bir fonksiyondur. Sadece say脹sal deerlerle 巽al脹脹r. Sum fonksiyonunun kullan脹m脹 u ekildedir: SUM (ALL | DISTINCT s端tun_ad脹) Not: ALL anahtar kelimesi kullan脹ld脹脹 zaman, s端tundaki t端m say脹sal veriler toplan脹r ve NULL(bo) deerler hesaba kat脹lmaz. DISTINCT anahtar kelimesi kullan脹l脹rsa, her bir say脹sal deerin sadece tek 旦rnei al脹narak toplama yap脹l脹r.
  • 7. 7 Sum fonksiyonu rnekleri rnek 1: SELECT SUM (ALL not_oran) FROM BOTE ; rnek 2: SELECT SUM (DISTINCT not_oran) FROM BOTE ; BOTE tablosunda kayd脹 bulunan t端m kiilerin not oranlar脹n脹 toplay脹p sonucu veren bir SQL sorgusu yazd脹k. NULL olmayan t端m veriler bu toplama dahil edilecektir. DISTINCT anahtar kelimesi kullan脹l脹rsa not oran脹 s端tunundaki bir deer birden 巽ok sat脹rda olsa bile sadece bir kere toplama dahil edilirler.
  • 8. 8 c. AVG FONKSYONU Bu fonksiyon say脹sal t端rde veri bar脹nd脹ran bir s端tundaki deerlerin ortalama deerini almak 端zere kullanaca脹m脹z bir fonksiyondur. Ortalamay脹 almak i巽in, 旦nce NULL olmayan t端m say脹sal deerler toplan脹r ve 巽脹kan sonu巽 hesaba dahil edilen sat脹rlar脹n toplam say脹s脹na b旦l端n端r. AVG Fonksiyonu u ekilde kullan脹l脹r: AVG (ALL | DISTINCT s端tun_ad脹)
  • 9. 9 c. AVG FONKSYONU ALL anahtar kelimesi kullan脹lmas脹 durumunda, belirtilen s端tundaki NULL veri i巽ermeyen t端m deerler toplan脹r ve sonu巽 bu toplama ilemine dahil edilen sat脹rlar脹n adedine b旦l端n端r. DISTINCT anahtar kelimesinin kullan脹lmas脹 durumunda ise, 旦zg端n say脹lar toplanarak 巽脹kan sonu巽 bu toplama ilemine katk脹da bulunan sat脹rlar脹n toplam adedine b旦l端nerek sonu巽 elde edilir. Burada kullanaca脹m脹z s端tun_ad脹 parametresi, mutlaka say脹sal t端rde veri bar脹nd脹ran bir s端tuna ait olmal脹d脹r. AVG fonksiyonu dier veri t端rleriyle hata verecektir.
  • 10. 10 rnek 1 : SELECT AVG (ALL notlar) FROM BOTE ; AVG fonksiyonu rnekleri BOTE tablosundaki notlar s端tunu NULL deer ta脹mayan sat脹rlardaki t端m not deerleri toplanm脹t脹r. Ard脹ndan 巽脹kan sonu巽, bu toplama ilemine dahil edilen sat脹rlar脹n toplam adedine b旦l端nm端t端r. B旦ylece ortalama deer elde edilmitir. rnek 2 : SELECT AVG (DISTINCT notlar) FROM BOTE ; Bu SQL sorgusuyla, NULL olmayan ve sadece 旦zg端n olan notlar s端tunundaki say脹sal deerler toplanm脹, 巽脹kan sonu巽 ise yine bu toplamlara dahil edilen sat脹r adedine b旦l端nm端t端r.
  • 11. 11 AVG fonksiyonu rnekleri rnek 3 : SELECT AVG (DISTINCT notlar) FROM BOTE ; Bu SQL sorgusu ile, 旦zg端n notlar脹n toplam脹 al脹nm脹 ve 巽脹kan sonu巽 da toplama ilemine dahil edilen sat脹rlar脹n adedine b旦l端nm端t端r. Hesaplanmayan NULL deerler dahil edilmemitir. Bunu baka bir bi巽imde ifade edecek olursak, notu "70" olan 端巽 kiiye ait kay脹t bulunmaktad脹r. Ancak sadece bir tane "70" deeri hesaba kat脹lm脹t脹r. Bu ekilde sadece 旦zg端n olan say脹sal deerler (notlar) toplanm脹 ve ortalama al脹n脹rken de sadece toplama ilemine dahil olan sat脹rlar脹n say脹s脹 ile b旦lme ilemi yap脹lm脹t脹r.
  • 12. 12 d. MIN FONKSYONU Say脹sal t端rde veri i巽eren bir s端tundaki en k端巽端k deeri tespit etmek i巽in kullan脹l脹r. Belirtmi olduumuz s端tundaki t端m verileri tek seferde okuyan MIN fonksiyonu, bize okuduu deerler i巽inde en k端巽端k olan脹 sonu巽 olarak d旦nd端r端r. MIN Fonksiyonu u ekilde kullan脹l脹r: MIN (s端tun_ad脹) Not: MIN fonksiyonu i巽in dikkat etmemiz gereken 旦nemli bir fark bulunmaktad脹r. AVG ve SUM fonksiyonlar脹 sadece say脹sal veri t端r端yle 巽al脹abilirken, MIN fonksiyonu tarih-saat, karakter ve say脹sal veri t端rleriyle 巽al脹abilmektedir.
  • 13. 13 MIN fonksiyonu rnekleri rnek 1: SELECT MIN (giris_tarih) FROM BOTE; Bu SQL sorgusu, BOTE tablosunda yer alan ve 旦rencilerin okula giri tarihlerini bar脹nd脹ran giris_tarih s端tunundaki en k端巽端k tarih-saat deerini d旦nd端rmektedir. rnek 2: SELECT MIN (notlar) FROM BOTE; Bu sorgu ise, BOTE tablosundaki 旦renci notlar脹n脹 bar脹nd脹ran notlar s端tunundaki en d端端k say脹sal veriyi d旦nd端rmektedir.
  • 14. 14 e. MAX FONKSYONU Bu fonksiyon parametre olarak verdiimiz bir s端tundaki en b端y端k say脹sal deeri bulmak i巽in kullan脹l脹r. MAX fonksiyonu ayr脹ca tarih -saat ve karakter veri t端rleriyle de 巽al脹abilmektedir. MAX fonksiyonun kullan脹m脹 u ekildedir: MAX (s端tun_ad脹) Buradaki s端tun_ad脹 parametresi, say脹sal, tarih - saat veya karakter veri t端r端nde bilgi bar脹nd脹ran bir s端tunun ad脹 olmal脹d脹r.
  • 15. 15 MAX Fonksiyonu rnekleri rnek 1: SELECT MAX (notlar) FROM BOTE ; Bu SQL sorgusu, tahmin edeceiniz 端zere, SALARY s端tununda bulunan en y端ksek maa脹 d旦nd端recektir. rnek 2: SELECT MAX (giris_tarih) FROM BOTE ; Bu sorguyla, BOTE tablosu i巽inde i balama tarihlerinin bar脹nd脹ran giris_tarih s端tunundaki en y端ksek deeri elde etmi oluyoruz. Bir baka deyile, okula en son balayan kiinin giri tarihini 旦reniyoruz.
  • 16. 16 DML (DATA MANIPULATION LANGUAGE-VER DE帖TRME DL) KOMUTLARI Burada g旦receimiz komutlar bir tabloya veri eklemek, silmek veya tabloyu g端ncellemek i巽in kullan脹lacakt脹r. Bunlar: a. INSERT b. DELETE c. UPDATE
  • 17. 17 a. INSERT KOMUTU Tablolara veri eklemek i巽in kullanaca脹m脹z komut olan INSERT, her seferinde tek bir sat脹ra veri ekleyebilecei gibi, birden 巽ok sat脹ra veri ekleyecek bi巽imde de 巽al脹t脹r脹labilir. Ancak Oracle SQL, prosed端r tabanl脹 bir dil olmad脹脹 i巽in siz sadece belirli kriterleri bildirip ekleme yap脹lmas脹 i巽in kodu 巽al脹t脹r脹rs脹n脹z. Oracle lig Database Server, bu eklemelerin nas脹l ve hangi s脹rayla yap脹laca脹na kendi karar verir ve bu ama巽la da execution plan (巽al脹t脹rma plan脹) 旦zelliini kullan脹r.
  • 18. 18 Insert Komutu rnekler INSERT ilemini farkl脹 yollarla ger巽ekletirebiliriz, bu y旦ntemlerden birisi eklenmek istenen verinin elle yaz脹lmas脹d脹r. B旦yle bir INSERT ileminin s旦z dizimi u ekildedir: INSERT INTO tablo_ad脹 *s端tun_ad脹1, s端tun_ad脹2, ..+ VALUES (veril, veri2, ...) ; Bir baka y旦ntem ise, ekleyeceimiz sat脹r脹n hangi s端tunlar脹na veri ekleyeceimizi biliyorsak, sadece bu s端tunlar脹 ve eklenecek olan deerlerini yazarak 聴NSERT ilemini ger巽ekletirmektir. INSERT INTO bolum(bolum_adi, bolum_ID) VALUES (B旦te', 5) ;
  • 19. 19 COMMIT VE ROLLBACK DML komutlar脹n脹n kullan脹lmas脹n脹n ard脹ndan, eer hatal脹 bir veri girii, g端ncellemesi veya silme ilemi ger巽ekletiyse, bu ilemi ROLLBACK komutuyla geri alabilirsiniz. ROLLBACK komutu, bir 旦nceki commit ileminden sonra yap脹lan t端m deiiklikleri geri alacakt脹r. rnein, eer SQL*Plus veya SQL Developer program脹n脹 a巽t脹ktan sonra hi巽 INSERT ilemi yapmad脹ysan脹z, ger巽ekletireceiniz ilk INSERT ileminden sonra ROLLBACK yaz脹p 巽al脹t脹r脹rsan脹z INSERT ilemini geri alabilirsiniz.
  • 20. 20 COMMIT VE ROLLBACK 聴NSERT al脹t脹rmalar脹n脹 SQL*Plus program脹n脹 kullanarak ger巽ekletirdiyseniz komut sat脹r脹nda ROLLBACK yaz脹n ve klavyede Enter tuuna bas脹n.
  • 21. 21 b. DELETE KOMUTU Bir tablodan sat脹r silmek istediimiz zaman DELETE komutunu kullanmam脹z gerekir. Ancak DELETE komutunu kullan脹rken dikkatli olmak gerekir, 巽端nk端 tek bir DELETE komutuyla tablodaki t端m verileri silmek de m端mk端nd端r. DELETE komutunun s旦z dizimi u ekildedir: DELETE FROM tablo_ad脹 [WHERE ko帳ul ] ;
  • 22. 22 DELETE ve FROM komutlar脹 birlikte kullan脹l脹rlar ve zorunludurlar. 聴巽inden sat脹r silmek istediimiz tabloyu tablo_ad脹 parametresinde belirtmemiz gerekir, WHERE koul t端mcesine de dikkat etmemiz gerekir, burada belirttiimiz arta uyan t端m sat脹rlar tablodan silinecektir. Eer WHERE t端mcesinde belirttiiniz arta uygun sat脹r bulunamazsa bir hata almazs脹n脹z, sadece silme ilemi ger巽eklemez. DELETE KOMUTU RNEK rnek 1:DELETE FROM bolumler WHERE bolum_ID = 5 ; Bu SQL sorgusu, bolumler tablosundaki bolum_ID deeri 5olan sat脹rlar脹 siler. Eer sonucu g旦r端nt端lemek isterseniz bir sorgu yazabilirsiniz: SELECT * FROM bolumler ;
  • 23. 23 c. UPDATE KOMUTU Eer bir tablodaki var olan verileri deitirmek istersek, kullanmam脹z gereken komut UPDATE olacakt脹r. UPDATE komutunun s旦z dizimi 旦yledir: UPDATE tablo_ad脹 SET s端tun_ad脹1 = deger1 [, s端tun_ad脹2 = deger2, ... 1 WHERE ko帳ul ;
  • 24. 24 Update Komutu Kullan脹m脹 UPDATE komutunun hemen ard脹ndan 端zerinde deiiklik yapaca脹m脹z tablonun ad脹n脹 belirtiyoruz. SET komutu ise se巽tiimiz s端tunlara yeni deerleri girmemizi salayacak olan dier zorunlu komuttur. SET komutunun ard脹ndan tablodaki s端tunlar脹n adlar脹n脹 yaz脹p bir eitlik (=) iaretiyle yeni deeri belirtiyoruz. Deiiklik yapmak istediimiz her bir s端tunu ve yeni deeri bu ekilde s脹rayla yaz脹p devam edebiliriz. Son olarak da koulumuzu belirtmek 端zere WHERE t端mcesini kullan脹yoruz.
  • 25. 25 Update Komutu rnei rnek 1: UPDATE BOTE SET not = 70 WHERE ogrenci_ID = 191 ; ogrenci_ID numaras脹 191 olan Kaz脹m ahin isimli 旦rencinin notunu 70 olarak deitirmi bulunuyoruz. UPDATE ileminin sadece bu 巽al脹an 端zerinde ger巽ekletiine dikkat etmek gerekir.
  • 26. 26