|   Çevrimdışı   
            
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
           |      Oracle - OraClob          
       EXISTS 
"Var, mevcuttur" anlamındaki bu sözcük, SQL' de Boolean (lojik, mantıksal) operatörüdür. İçteki SELECT komutunun sorgulanması sonucunda, en az bir tablo satırı üretilmişse,EXISTS operatörü true (doğru) değerini, hiçbir tablo satırı üretilmemişse, EXISTS operatörü (yalnış) değerini üretir. Not: EXISTS operatörü, AND, OR ve NOT gibi diğer mantıksal ifadelelerle de kullanılır. Aşağıda ki örnekte HASTA tablosunda EXISTS içerisine yazılan ifadeyi sağladığı için true değerini döndürmüş ve aşağıdaki tabloyu oluşturmuştur.   
SELECT * FROM HASTA WHERE EXISTS(SELECT HS_AD FROM HASTA)   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
5 I.HAKKI ALPTÜRK E 3  
9 VEDAT KARAARSLAN E 2  
13 ZAFER TEKBUDAK E 1  
17 CELALETTİN DINÇER E 1    
EXP 
EXP(n) e' nin n' inci üssünü sonuç olarak döndürür. (e=2.718)    
SELECT EXP(3) FROM HASTA   
EXP(3)  
20  
20  
20    
EXPLAIN PLAN 
EXPLAIN PLAN, Tablosunu ya utlxpin.sql'ini çalıştırarak ya da create table cümlesi ile kendiniz yaratabilirsiniz.    
EXTRACT    
FLOOR  
FLOOR, FLOOR(n) n sayısından küçük veya n sayısına eşit mevcut en büyük tam sayıyı sonuç olarak döndürür. Bu örnekte 9.9 ve -9.9 sayılarını FLOOR komutu ile 9.9' u 9'a ve -9.9'u da -10' a (kendisinden küçük en yakın tam sayıya) çevirir.   
SELECT FLOOR(9.9), FLOOR(-9.9) FROM HASTA   
FLOOR(9.9) FLOOR(-9.9)  
9 -10  
9 -10  
9 -10    
FOR  
For döngüleri özellikle belirli bir sayıda yapılan döngüler için kullanılan döngü tipidir. Döngünün kaç defa olacağını baş tarafında ki sayılar belirlemektedir.   
FROM  
FROM, Kullanılacak tabloların yazıldığı bölümdür.    
SELECT * FROM HASTA   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
5 I.HAKKI ALPTÜRK E 3  
9 VEDAT KARAARSLAN E 2  
13 ZAFER TEKBUDAK E 1  
17 CELALETTİN DINÇER E 1    
FUNCTION  
FUNCTION, Bir fonksiyon bir değer hesaplayan alt programdır. Fonksiyon ve prosedür yapıları RETURN anahtar kelimesi haricinde benzerdir.    
GRANT  
GRANT, Sistem hakları ,rolleri ve nesne haklarını bir kullanıcı veya rolden hak alarak geri alma komutudur.   
GREATEST  
GREATEST, Belirtilen sayı yada gün yada tarih içerisinden en büyüyünü bulur.   
SELECT GREATEST(93,42017,2005) AS ENBUYUKSAYI FROM HASTA   
GREATEST içerisine yazılan sayılardan en büyük rakkamı, tarihi yada mantıksal ifadeyi bularak sonuca yazdırır.Burada ki AS komutu ile de yzdığımız bu sayılar arasında ki en büyük sayıyı bularak bu alanın adını ENBUYUKSAYI olarak değiştirir.   
ENBUYUKSAYI  
42017  
42017  
42017    
SELECT GREATEST('ONE','TWO') AS SAYI FROM HASTA    
SAYI  
TWO  
TWO    
SELECT GREATEST(TO_DATE('11/11/2000','mm/dd/yyyy'), TO_DATE('12/12/2001')) AS ENBUTUKTARIH FROM HASTA   
ENBUYUKTARIH  
12/12/2001  
12/12/2001  
12/12/2001    
GROUP  
GROUP, Sorgu sonucu dönen kayıtları belli özelliklerine göre gruplama işleminin yapıldığı bölümdür.    
SELECT AVG(HS_KEY) FROM HASTA GROUP BY HS_KEY    
Bu örnek ile Hasta tablosu içerisinde hasta numaralarına(HS_KEY) göre gruplama yaparak, herbir gurubun ortalamasını (AVG) bulur.   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
5 I.HAKKI ALPTÜRK E 3  
9 VEDAT KARAARSLAN E 2  
13 ZAFER TEKBUDAK E 1  
17 CELALETTİN DINÇER E 1    
GROUPING  
GROUPING, Group by dan sonra kullanılır.    
SELECT HS_KEY, HS_AD, COUNT(*), GROUPING(HS_KEY) FROM HASTA GROUP BY ROLLUP(HS_AD, HS_KEY)   
HS_KEY HS_AD COUNT(*) GROUPING(HS_KEY)  
87625 AYŞE 1  
AYŞE 1  
125757 BİRSEN 1  
BİRSEN 1      
HAVING    
GROUP BY kullanıldığı SQL' lerdeki grubu ilgilendiren şartların yazıldığı bölümdür. Burada grup içerisinde ki şartlar belirlenir. Bu örnekte hasta numarasına(HS_KEY) göre guruplama yapılmış. Ve HAVING komutu ile her bir group içerisinde ki hasta numarası(HS_KEY) 8' den küçük olan numaraların ortalaması alınmıştır.   
SELECT AVG(HS_KEY) FROM HASTA GROUP BY HS_KEY HAVING AVG(HS_KEY)<8   
AVG(HS_KEY)  
5      
HEXTORAW  
SELECT RAWTOHEX(HEXTORAW('12341312314151')) FROM HASTA   
RAWTOHEX(HEXTORAW('19'))  
19  
19      
IN  
IN(liste) Liste' nin içindeki herhangi bir değeri sağlayan kayıtlar.    
SELECT * FROM HASTA WHERE HS_KEY IN(SELECT MAX(HS_KEY) FROM HASTA)    
Hasta tablosu içerisinde hasta numarası (HS_KEY) en büyük olan kaydın tüm alanlarını(bilgilerini) getirir.   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
125853 SELMA ZENGİN K 1 ANKARA 11.11.1976  
INDEX  
Tablolarda ki kayıtlara daha hızlı erişebilmek için kullanılan nesnelerdir.   
INITCAP  
INITCAP(d) d dizesinin ilk harfi büyük diğer harfleri küçük olarak sonuçta döndürür.   
SELECT INITCAP(HS_AD) FROM HASTA   
Bu örnek ile hastanın adı (HS_AD) alanında ki bilgilerin baş harfini büyük diğer harflerini küçük olarak değiştirir.    
INITCAP(HS_AD)  
Ahmet  
Kaan  
Yiğit      
INSERT  
Tablo'ya bilgi girişi yapmak için kullanılan bir komuttur.   
CREATE TABLE COZUM(ADI CHAR(20), SOYADI CHAR(20))    
Yukarıda COZUM adında ADI ve SOYADI alanları olan bir tablo yarattık.Şimdide yaratmış olduğumuz bu tabloya 1 satır bilgi girişi yapalım.    
INSERT INTO COZUM VALUES('ÖZLEM','YILDIZ')   
Daha sonrada SELECT * FROM diyerek yaratmış olduğumuz tabloyu görelim.   
ADI SOYADI  
ÖZLEM YILDIZ    
INSTR  
INSTR(d1,d2,[m,n]) d1 dizesinin içerisinde ,d2 dizesini d12in m'inci karakterden başlamak üzere n'inci defaki tekrarını arar ve sonuçta bulduğu karakter sayısını döndürür eğer belirtilmezse m ve n start olarak 1' dir.    
SELECT HS_AD, INSTR(HS_AD, 'A') FROM HASTA   
Hasta tablosu içerisinde hastanın adı(HS_AD) adlı alanda A harfini arar ve A harfi kaçıncı karakterden itibaren başlarsa INSTR ile A harfinin başladığı konumunu yazar.   
HS_AD INSTR(HS_AD,'A')  
AYSE 1  
OZLEM  
KAAN 2  
OSMAN 4  
OMER      
INSTRB  
SELECT INSTRB(HS_AD,'A') FROM HASTA   
HS_AD INSTR(HS_AD,'A')  
AYSE 1  
OZLEM  
KAAN 2  
OSMAN 4  
OMER      
INTERSECT  
İki tane ayrı sql sonucu dönen kayıtların kesişim kümesini sonuca yansıtır.     
INTO  
INTO kelimesi INSERT kelimesinden sonra kullanılır. Tabloda ki bir satıra bilgi girişi yapabilmek için kullanılır. İlk önce bir tablo yaratalım daha sonrada INTO kelimesini kullanarak yaratmış olduğumuz bu tablo ya bir satır veri girişi yapalım.   
CREATE TABLE MUSTER(MUSTERIADI CHAR(20), MUSTERISOYADICHAR(20))   
(Müşteri adında MUSTERI NO ve MUSTERI ADI adlı alanları olan bir tablo yarattık.)   
INSERT INTO MUSTER VALUES('DERYA', 'KOÇ')   
(Şimdi de yaratmış olduğumuz bu tablo ya bir satır bilgi girdik.Aşağıda yazmış olduğumuz kodu çalıştırarak sonuç tablosunu görebiliriz.   
SELECT * FROM MUSTER    
MUSTERIADI MUSTERISOYADI  
DERYA KOÇ      
LAST_DAY  
LAST_DAY(t) t tarihinin içerisinde bulunduğu ayın son gününü sonuç olarak döndürür.    
SELECT LAST_DAY(TO_DATE('01.01.2001')) FROM HASTA    
LAST_DAY(TO_DATE('01.01.2001')  
31.01.2001      
LENGTH  
LENGTH(d1) d1 dizesinin boyutunu sonuç olarak döndürür.    
SELECT LENGTH('COZUM') FROM HASTA   
LENGHT('COZUM')  
5      
LENGTHB  
SELECT LENGTHB('COZUM') FROM HASTA   
LENGHT('COZUM')  
5      
LIKE  
LIKE, Şarta bir bölümü uyan kayıtları listeler. Benzerlik vermek için kullanılır. '%' karakteri tüm karakterler yerine geçer. '_' karakteri ise tek karakter yerine geçer. Sadece _ işaretini çıkarmak için ' _ ' işareti kullanılır. Küçük büyük harf ayrımı vardır.    
HASTA tablosu içerisinde ki hastanın adı(HS_AD) alanında ki adı A ile başlayanları listeleyiniz.   
SELECT * FROM HASTA WHERE HS_AD LIKE 'A%'   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
137 ATİLLA BAYBAŞ E 3  
149 ALPER YASEMİN E 2  
241 APDULRAHMAN BAY E 2  
261 AYNUR KOÇ K 1    
HASTA tablosu içerisinde ki hastanın adı(HS_AD) alanında ki adının son harfi A olanları listeleyiniz.   
SELECT * FROM HASTA WHERE HS_AD LIKE '%A'   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
2005 SEMA SARIKAYA K 3  
1005 DOĞA AMİKLİOĞLU K 2  
20005 MEHLİKA ÖĞÜT K 2  
8005 SÜREYYA TEKİNCAN K 1    
HASTA tablosu içerisinde ki hastanın adı(HS_AD) alanında başı ve sonu belli olmayan içerisinde A harfi bulunan kayıtları listeleyiniz.   
SELECT * FROM HASTA WHERE HS_AD LIKE '%A%'   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
2005 KAAN MERT E 3  
1005 SEMA CAN K 1  
20005 SİNAN YILDIZ E 1  
8005 İHSAN TEKİNCAN E 1      
LINK    
LN  
LN(n) n sayısının doğal logaritmasını sonuç olarak döndürür.    
SELECT LN(120) FROM HASTA   
LN(120)  
5      
LOG  
LOG(m,n) n sayısının m tabanına göre logaritmasını sonuç olarak döndürür.    
SELECT LOG(10,10000) FROM HASTA    
LOG(10,10000)  
4      
LOWER  
LOWER(d) d dizesinin bütün harflerini küçük olarak sonuçta döndürür. Bu örnekte HASTA tablosunda hastanın adı(HS_AD) adlı alanda tüm bilgiler(satırlar) küçük harfe çevrilerek sonuca yazdırıldı.   
SELECT LOWER(HS_AD) FROM HASTA   
HS_KEY HS_AD HS_SOYAD CINSIYET ISLEMSAYI DOGUMYER DOGUMTARIHI  
200 ali KANBUR E 3  
1000 mert SERT K 1  
2003 yasemin YILMAZ K 1  
8005 seda TEKİNCAN K 1      
LPAD  
LPAD(d1,n,d2) d1 dizisini, n karakter oluncaya kadar soldan d2 eklenmiş olarak sonuçta döndürür.    
SELECT LPAD('L',3,'P') FROM HASTA   
LPAD('L',3,'P')  
LPP  
LPP  
LPP      
LTRIM  
LTRIM(d1[d2])d1 dizisinin baş tarafından d2 dizesinde olan karakterler çıkartılmış olarak sonuçta döndürür, eğer belirtilmezse standart olarak d2 boşluktur. Bu örnekte HASTA tablosu içerisinde hastanın adı(HS_AD) adlı alanda baş harfi A ile başlayan adların baş harfini çıkartarak sonuca yansıtılmıştır.   
SELECT HS_KEY, HS_AD, CINSIYET, LTRIM(HS_AD,'A') FROM HASTA   
HS_KEY HS_AD CINSIYET LTRIM(HS_AD,'A')  
137 ATİLLA E TİLLA  
149 ALPER E LPER  
241 APDULRAHMAN E PDURRAHMAN  
261 SERAP K ERAP      
MATERIALIZED      
MAX  
MAX(Sütün) Sütün değerlerinin en büyüyünü döndürür. Burada DISTINCT komutu ile tekrarlanan kayıtlar teke düşürerek tüm kayıtlar arasında maximum kaydı bulur. ALL komutu ile de tekrarlanmış kayıtlar olsa dahi tüm kayıtlar arasında maximum en büyük hasta numarasını(HS_KEY) bulur.   
SELECT MAX(HS_KEY), MAX(DISTINCT HS_KEY), MAX(ALL HS_KEY) FROM HASTA   
MAX(HS_KEY) MAX(DISTINCT HS_KEY) MAX(ALL HS_KEY)  
125853 125853 125853      
MIN  
MIN(Sütün) Sütün değerlerinin en küçüğünü döndürür. Burada DISTINCT komutu ile tekrarlanan kayıtlar teke düşürerek tüm kayıtlar arasında minumum kaydı bulur. ALL komutu ile de tekrarlanmış kayıtlar olsa dahi tüm kayıtlar arasında minumum en küçük hasta numarasını(HS_KEY) bulur.   
SELECT MIN(HS_KEY), MIN(DISTINCT HS_KEY), MIN(ALL HS_KEY) FROM HASTA   
MIN(HS_KEY) MIN(DISTINCT HS_KEY) MIN(ALL HS_KEY)  
5 5 5      
MINUS  
MINUS, Birinci sql sonucu dönen kayıtlarla ikinci sql sonucu dönen kayıtlar arasında ki fark kümesi.     
MOD  
MOD(m,n) m sayısının n sayısına bölümünden kalanı sonuç olarak döndürür.    
SELECT MOD(18,12) FROM HASTA    
MOD(18,12)  
6  
6    
MONTH  
MONTH, tarih kullanımında ay anlamındadır.     
MONTHS_BETWEEN  
MONTHS_BETWEEN(t1,t2) t1 ve t2 tarihleri arasındaki ay sayısını sonuç olarak döndürür.    
SELECT MONTHS_BETWEEN(TO_DATE('09-09-2001'), TO_DATE('01-02-2001')) FROM HASTA   
MONTHS_BETWEEN(TO_DATE('09-09-2001'), TO_DATE('01-02-2001'))  
7  
7  
7    
NEW_TIME  
SELECT NEW_TIME(TO_DATE('8-MAY-2000 8:00 AM'), 'PST','EST') FROM HASTA 
NEXT_DAY  
NEXT_DAY(t,d) t tarihinden sonra ki d isimli ilk günü sonuç olarak döndürür. NEXT_DAY(tarih,' gün' ) -->tarih 'den sonraki günün ilk tarihini verir.    
SELECT NEXT_DAY('01-MAY-2001' ,'SATURDAY') FROM HASTA    
NEXT_DAY('01-MAY-2001' ,'SATURDAY')  
07-MAY-2001      
NLS_CHARSET_DECL_LEN  
SELECT NLS_CHARSET_DECL_LEN (100,NLS_CHARSET_ID('US7ASCII')) FROM HASTA   
NLS_CHARSET_DECL_LEN (100,NLS_CHARSET_ID('US7ASCII'))  
100  
100      
NLS_CHARSET_ID  
SELECT NLS_CHARSET_ID('US7ASCII'), NLS_CHARSET_ID('WE8EBCDIC37C') FROM HASTA    
NLS_CHARSET_ID('US7ASCII') NLS_CHARSET_ID('WE8EBCDIC37C')  
1 90  
1 90      
NLS_CHARSET_NAME  
SELECT NLS_CHARSET_NAME(1),NLS_CHARSET_NAME(90) FROM HASTA   
NLS_CHARSET_NAME(1) NLS_CHARSET_NAME(90)  
US7ASCII WE8EBCDIC37C  
US7ASCII WE8EBCDIC37C      
NLS_INITCAP  
SELECT NLS_INITCAP('COZUM', 'NLS_SORT=XFRENCH') FROM HASTA   
NLS_INITCAP('COZUM', 'NLS_SORT=XFRENCH')  
Cozum  
Cozum  
Cozum      
NLS_LOWER  
SELECT NLS_LOWER('COZUM', 'NLS_SORT=XFRENCH') FROM HASTA   
NLS_LOWER('COZUM', 'NLS_SORT=XFRENCH')  
cozum  
cozum  
cozum      
NLS_UPPER  
SELECT NLS_UPPER('COZUM', 'NLS_SORT=XFRENCH') FROM HASTA   
NLS_UPPER('COZUM', 'NLS_SORT=XFRENCH')  
COZUM  
COZUM  
COZUM      
NLSSORT  
SELECT NLSSORT('OZLEM','NLS_SORT=XFRENCH') FROM HASTA   
NLSSORT('OZLEM','NLS_SORT=XFRENCH')  
5A874B285000010101010100  
5A874B285000010101010100      
NOAUDIT  
Kontrol işlemini geri alma komutudur.     
NOT  
NOT' ın listenin içerisinde ki herhangi bir değeri sağlayan kayıtlar haricindeki kayıtlar yada not like şarta bir bölümü uyan kayıtlar haricinde ki kayıtlar gerektiğine not' ın yada not like komutları ile kullanılır. Aşağıda ki örnekte HASTA tablosunda hastanın adı(HS_AD) A ile başlamayan kayıtlar listelenecektir.   
SELECT HS_KEY, HS_AD FROM HASTA WHERE HS_AD NOT LIKE 'A%'   
HS_KEY HS_AD  
12 SEMA  
138 MERT  
152 YASEMİN         
                __________________       |