16 Nisan 2018 Pazartesi

Format fonksiyonu

Format sql fonksiyonları dahilinde biçim ve format belirtilmek için kullanılır. Karakter bazlı işlemler için sql server içerisinde veri tipleri arasında değişim için kullanılır. Tarih, saat, zaman veri türleri arasında çevirmek için, format fonksiyonu kullanılmalıdır. Tarih saat dışında kalan string varchar integer ve diğer veri tipleri arasında dönüşümler için cast ve convert kullanılmalıdır. FORMAT .NET Framework CLR tarafından üretilmiştir.


Format Kullanımı


FORMAT ( deger, format [, dil] )

Format fonksiyonu içerisindeki değişkenler


Değer


Format fonksiyonu içerisinde ilk verilen parametre değer olarak, dönüştürmek istediğimiz veri tipini belirtmeliyiz. Bu veri tipi biçimlendirmek istediğimiz hedef veriyi kapsar.


Format


Hedef olarak çevirmek istediğimiz biçimi belirtmek için kullanılır. Nvarchar format modeli gibi olmalıdır. NET Framework biçim modelini desteklemelidir.


Dil


Mecburi olmayan bir parametre. Boş bırakılarak geçebiliriz. En çok kullanılan yerleri tarih ve saat dönüşümlerinde kullanılmasıdır. Örnek vermek gerekirse, Amerika saat dilimini Türkiye saat dilimi biçim ve formatına çevirmek için kullanılmasıdır.


Geri Dönen Veri Tipleri


Geri dönen veri tipleri 2 veri türünde sınırlıdır. Nvarchar ya da Null değer döndürür. FORMAT, geçerli olmayan bir kültür dışındaki hatalar için NULL değerini döndürür. Örneğin, biçiminde belirtilen değer geçerli değilse NULL döndürür. Aşağıdaki tabloda dönüştürmek için kullanabileceğimiz  veri tiplerinin, dönüşüm için kullanabileceğimiz listesidir.


 


 





















































CategoryType.NET type
NumericbigintInt64
NumericintInt32
NumericsmallintInt16
NumerictinyintByte
NumericdecimalSqlDecimal
NumericnumericSqlDecimal
NumericfloatDouble
NumericrealSingle
NumericsmallmoneyDecimal
NumericmoneyDecimal
Date and TimedateDateTime
Date and TimetimeTimeSpan
Date and TimedatetimeDateTime
Date and TimesmalldatetimeDateTime
Date and Timedatetime2DateTime
Date and TimedatetimeoffsetDateTimeOffset

Format Fonksiyonu Örnekleri


 DECLARE @d DATETIME = ’10/01/2011′;

SELECT FORMAT ( @d, ‘d’, ‘en-US’ ) AS ‘Amerikan İngilizcesi Sonucu’

,FORMAT ( @d, ‘d’, ‘en-gb’ ) AS ‘İngiltere İngilizcesi Sonucu’

,FORMAT ( @d, ‘d’, ‘de-de’ ) AS ‘Almanca Sonucu’

,FORMAT ( @d, ‘d’, ‘zh-cn’ ) AS ‘Çince Sonucu’;



SELECT FORMAT ( @d, ‘D’, ‘en-US’ ) AS ‘Amerikan İngilizcesi Sonucu’

,FORMAT ( @d, ‘D’, ‘en-gb’ ) AS ‘İngiltere İngilizcesi Sonucu’

,FORMAT ( @d, ‘D’, ‘de-de’ ) AS ‘Almanca Sonucu’

,FORMAT ( @d, ‘D’, ‘zh-cn’ ) AS ‘Çince Sonucu’;


Sonuç


Amerikan İngilizcesi Sonucu İngiltere İngilizcesi Sonucu Almanca Sonucu Çince Sonucu

—————- —————————– ————- ————————————-

10/1/2011 01/10/2011 01.10.2011 2011/10/1


(1 row(s) affected)


Amerikan İngilizcesi Sonucu İngiltere İngilizcesi Sonucu Almanca Sonucu Çince Sonucu

—————————- —————————– —————————– —————————————

Saturday, October 01, 2011 01 October 2011 Samstag, 1. Oktober 2011 2011年10月1日


(1 row(s) affected)


 


Tarih Dönüştürmek için Format

DECLARE @d DATETIME = GETDATE();

SELECT FORMAT( @d, ‘dd/MM/yyyy’, ‘tr-US’ ) AS ‘Tarih Dönüşüm Türkçe’ ,

FORMAT( @d, ‘dd/MM/yyyy’, ‘tr-US’ ) AS ‘Tarih Dönüşüm İngilizce’

,FORMAT(123456789,’###-##-####’) AS ‘Özel Sayı Dönüştürmek’;


 


Sonuç


Tarih Dönüşüm Türkçe    Tarih Dönüşüm Türkçe   Özel Sayı Dönüştürmek


—————————- —————————– —————————–


16.04.2018                           16.04.2018                         123-45-6789



Format fonksiyonu

Hiç yorum yok:

Yorum Gönder