![]() |
|
Durum İfadeleriDurum ifadeleri, farklı sütun değerleri için farklı sonuçlar üretebilen koşullu ifadeler oluşturmak için kullanılan temel yapı taşlarıdır. Durum (Switch)Durum ifadesinin bu biçimine CASE (Lookup) biçimi de denir. Önce expression1 değeri incelenir, ardından WHEN ifadeleri. expression1 değeri herhangi bir WHEN ifadesiyle eşleşirse, karşılık gelen THEN ifadesindeki değeri atar. expression1 birden çok WHEN tümceciğindeki bir ifade ile eşleşirse, yalnızca ilk eşleşmeyi izleyen ifade atanır. Hiçbir WHEN ifadesi eşleşmezse, ELSE ifadesinde belirtilen değeri atar. Hiçbir ELSE ifadesi belirtilmezse, Boş değerini atar. Durum (If) ifadesine de bakın. Sözdizimi: CASE expression1 WHEN expression THEN expression {WHEN expression... THEN expression...} ELSE expression END Burada: CASE CASE ifadesini başlatır. Arkasından bir ifade ve bir veya daha çok WHEN ve THEN ifadesi, isteğe bağlı olarak ELSE ifadesi ve END anahtar sözcüğü gelmelidir. WHEN Karşılanması gereken koşulu belirtir. THEN İlgili WHEN ifadesi karşılandıysa atanacak değeri belirtir. ELSE Hiçbir WHEN ifadesi karşılanmadıysa atanacak değeri belirtir. Kaldırılırsa, ELSE NULL varsayılır. END CASE ifadesini sonlandırır. Örnek CASE Golf skoru WHEN -5 THEN 'Par 6'da Birdie' WHEN -4 THEN 'Tiger olsa gerek' WHEN -3 THEN 'Par'ın üç altı' WHEN -2 THEN 'Par'ın iki altı' WHEN -1 THEN 'Birdie' WHEN 0 THEN 'Par' WHEN 1 THEN 'Bogey' WHEN 2 THEN 'Double Bogey' ELSE 'Triple Bogey veya Kötüsü' END Yukarıdaki örnekte, WHEN ifadeleri kesin eşitlik göstermelidir; şu şekilde bir WHEN koşulu WHEN < 0 THEN 'Par Altı' karşılaştırma işleçlerine izin verilmediğinden geçersizdir. Case (If)Case ifadesinin bu biçimi her bir WHEN koşuluna karşılık gelir ve karşılanırsa, ilgili THEN ifadesindeki değeri atar. Hiçbir WHEN koşulu karşılanmazsa, ELSE ifadesinde belirtilen öndeğeri atar. Hiçbir ELSE ifadesi belirtilmezse, Boş değerini atar. Durum (Switch) ifadesine de bakın. Sözdizimi: CASE WHEN request_condition1 THEN expression1 {WHEN request_condition2 THEN expression2} {WHEN request_condition... THEN expression...} ELSE expression END Burada: CASE CASE ifadesini başlatır. Arkasından bir veya daha çok WHEN ve THEN ifadesi, isteğe bağlı olarak ELSE ifadesi ve END anahtar sözcüğü gelmelidir. WHEN Karşılanması gereken koşulu belirtir. THEN İlgili WHEN ifadesi karşılandıysa atanacak değer. ELSE Hiçbir WHEN ifadesinin karşılanmadığı durumdaki değeri belirtir. Kaldırılırsa, ELSE NULL varsayılır. END CASE ifadesini sonlandırır. Örnek CASE WHEN score-par < 0 THEN 'Par Altı' WHEN score-par = 0 THEN 'Par' WHEN score-par = 1 THEN 'Bogie' WHEN score-par = 2 THEN 'Double Bogey' ELSE 'Triple Bogey veya Kötüsü' END CASE ifadesinin Switch biçiminin aksine, If biçimindeki WHEN ifadeleri karşılaştırma işleçlerine izin verir; şu şekilde bir WHEN koşulu WHEN < 0 THEN 'Par Altı' geçersizdir. |
Ekim 2016'da Yayımlandı | Copyright © 2005, 2016, Oracle. Tüm hakları saklıdır. Legal Notices. |