1.1 Koşullu işlevlerin listesi
if-else
SQL dili, Java'daki operatöre biraz benzeyen bir işlev listesine sahiptir switch
.
Toplamda bu tür 4 işlev vardır:
Fonksiyonlar | Tanım | |
---|---|---|
1 | DAVA | analog anahtar |
2 | EĞER() | Üçlü operatörün veya if-else'nin bir benzeri |
3 | EĞER NULL() | if-else'nin analoğu |
4 | NULLIF() | if-else'nin analoğu |
SQL'deki son üç, işlevler olarak temsil edilir ve CASE
tam teşekküllü bir operatördür, bu nedenle en sonunda ayrı olarak ele alacağız.
1.2 EĞER() işlevi
SQL'deki bir işlev, IF()
Java'daki üçlü operatöre biraz benzer. SQL dilinde 3 parametre alır ve şöyle görünür:
IF (condition, true, false)
İşleve üç ifade iletilmelidir IF
:
- doğruluğu test edilen bir durum;
- koşul doğru olduğunda döndürülen bir ifade;
- koşul yanlış olduğunda döndürülen bir ifade.
Aşağıda, nasıl çalıştığını anlamayı kolaylaştırmak için bazı örnekler vereceğim:
Rica etmek | Sonuç | |
---|---|---|
1 | EĞER SEÇ( 1>2 , 2, 3) | 3 |
2 | EĞER SEÇ( 1<2 , 'evet', 'hayır') | 'Evet' |
3 | EĞER SEÇİN( STRCMP('test','test1' ), 'hayır', 'evet') | 'HAYIR' |
1.3 İşlev IFNULL() ve NULLIF()
Fonksiyonun iki modifikasyonu da vardır IF()
.
İlk değişiklik işlevidir IFNULL()
. Yalnızca iki değer alır:
IFNULL (expression 1, expression 2)
ifade1 eşit değilse , NULL
işlev ifade1'i döndürür . ifade1 ise , işlev ifade2'yiIS NULL,
döndürür . Esas olan, alan şuna eşit olduğunda varsayılan değerin ikamesidir : .NULL
Fonksiyonun ikinci modifikasyonu IF
fonksiyondur NULLIF()
, ayrıca iki değer alır:
NULLIF (expression 1, expression 2)
Ters yönde çalışır:
- ifade1 , ifade2'ye eşitse işlev şunu döndürür
NULL
; - ifadeler eşit değilse, ifade1 döndürülür .
GO TO FULL VERSION