Koray Kırdinli

Yazılım ve İş Yaşamı Hakkında Paylaşımlar

PL SQL Decode Fonksiyonu

Decode fonksiyonu IF-THEN-ELSE yapısını sorgu içerisinde kolayca yapmamızı sağlar.

 

DECODE(kolon_adi,koşul1,deger1,koşul2,deger2,. . .);

Burada kolonun değeri şu ise değer şu olsun şu ise şu olsun kolayca dememizi sağlıyor. Örneğin şöyle bir şeye ihtiyacınız oldu ; id alanınız var ve siz 1-10 arası kayıtlarınızı katagori1 11-20 arası kayıtlarınızı katagori2 olarak select sorgunuzda göstermek istiyorsunuz.

SELECT id,DECODE(trunc ((id – 1) / 10),0,’katogori1′,1,’katagori2′,2)  FROM TabloAdi

Veya

If yrs_of_service < 1 then return 0.04
If yrs_of_service >= 1 and < 5 then return 0.04
If yrs_of_service > 5 then return 0.06

gibi bir şey yapmak istiyoruz.Sorgusu aşağıdaki gibi olacaktır.1 den küçük değerler için 0,04 yazacaktır.

 

SELECT emp_name,
decode(trunc (( yrs_of_service + 3) / 4), 0, 0.04,
  1, 0.04,
    0.06) as perc_value
FROM employees;

 

 

Detaylar için http://www.techonthenet.com/oracle/functions/decode.php adresini inceleyebilirsiniz.

Reklamlar

Nisan 30, 2009 - Posted by | Oracle | , ,

Henüz yorum yapılmamış.

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s