Sem Göksu
Sem Göksu
Yazılım · Yolculuk · Fenerbahçe
Yazılım

SQL Server COALESCE Fonksiyonu

06 Eylül 2008 1 dk okuma 8471 2
Database`den veri çekerken null degerlerin geri dönmesi her zaman canımı sıkmıstır. Access`de iif, Sql Server`da case ile degerleri replace  ettirsekte sorunu çözsekde aslında bu isi yapabilecek daha kolay bir fonksiyon bulunmaktadır. Bu fonksiyonun adı COALESCE` dır. Bu fonksiyon veri çekerken field içersindeki null degeri istedigimiz deger ile replace etmemizi saglar. Kullanımı asagıdaki gibidir;

Kulanımı
Select
top 5
FirstName,
LastName,
COALESCE
(MiddleName,`-`) as MiddleName -- Eger MiddleName`deki deger NULL ise yerine "-" yazacak.
From
Person.Contact

Sonuç
Gustavo Achong -
Catherine Abel R.
Kim Abercrombie -
Humberto Acevedo -
Pilar Ackerman -

(5 row(s) affected)
Paylaş:

Yorumlar (2)

C
Can HANHAN 17 Oca 2009 14:22

Alternatif olarak IsNull'u da kullanabilirsiniz. SELECT IsNull(MiddleName, '-') Coalesce'nin güzelligi tek bir parametreye bagli kalmamasi. Yani sunun için de kullanabilirsiniz SELECT Coalesce(Firstname, Middlename, Companyname, '-') FROM ... Null olmayan ilk parametreyi dönecektir.

M
melike aslan 01 Eki 2010 02:51

Selam, Genelde NVL de kullanılabilinir. Select top 5 FirstName, LastName, NVL(MiddleName,`-`) as MiddleName -- Eger MiddleName`deki deger NULL ise yerine "-" yazacak. From Person.Contact

Yorum bırak

* Yorumlar moderasyon sonrası yayınlanır. E-posta gizli tutulur.