Ana Sayfa / SQL SERVER / Sql Fonksiyonlar / Format fonksiyonu

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.

 

 

Category Type .NET type
Numeric bigint Int64
Numeric int Int32
Numeric smallint Int16
Numeric tinyint Byte
Numeric decimal SqlDecimal
Numeric numeric SqlDecimal
Numeric float Double
Numeric real Single
Numeric smallmoney Decimal
Numeric money Decimal
Date and Time date DateTime
Date and Time time TimeSpan
Date and Time datetime DateTime
Date and Time smalldatetime DateTime
Date and Time datetime2 DateTime
Date and Time datetimeoffset DateTimeOffset

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


Ayrıca bknz.

@@Error fonksiyonu

@@Error fonksiyonu sql dili içerisinde önemli sql fonksiyonlarındandır. Sql server‘ın verdiği hatayı tespit edebilmek için …

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir