IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

 Kayıt ol  Topluluk
Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 12 Ekim 2014, 07:00   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
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

__________________
Bu kez pek bir afili yalnızlık, ağlatan bir kadın kadar düşman. Ağzı bozuk üstelik bırakmıyor acıtmadan.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet
Cevapla

Etiketler
oracle, oraclob


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Oracle Turkiye YazılımMimarı Bilim Dünyasından Son Haberler 0 27 Temmuz 2012 14:25
Oracle RIM'i alıyor mu! Deep Cep Telefonlar 0 18 Nisan 2012 18:15
Oracle Fonzerelli Oracle 1 03 Aralık 2010 17:22