06 Eyl 2008 SQL Server COALESCE Fonksiyonu Kategori: Yazılım Etiketler: SQL Server 2005SQL Server 2 Yorum 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 5FirstName, LastName,COALESCE(MiddleName,`-`) as MiddleName -- Eger MiddleName`deki deger NULL ise yerine "-" yazacak.From Person.ContactSonuçGustavo Achong -Catherine Abel R.Kim Abercrombie -Humberto Acevedo -Pilar Ackerman -(5 row(s) affected) Yorum (2) Can HANHAN / 17.1.2009 14:22:06 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. melike aslan / 1.10.2010 02:51:46 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 Yaz * Ad Soyad: * Email: * Message:
Yorum (2) Can HANHAN / 17.1.2009 14:22:06 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. melike aslan / 1.10.2010 02:51:46 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
Can HANHAN / 17.1.2009 14:22:06 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.
melike aslan / 1.10.2010 02:51:46 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