SQL'de tarihleri farklı formatlarda göstermek için FORMAT
fonksiyonunu kullanabilirsiniz. Türkçe kısa tarih formatı genellikle "gg.aa.yyyy" şeklindedir. Bu formatı elde etmek için SQL sorgunuzda FORMAT(date, 'dd.MM.yyyy')
kullanabilirsiniz.
Örneğin, "Orders" adlı bir tabloda "OrderDate" adlı bir tarih sütunu olduğunu varsayalım ve bu sütunu Türkçe kısa tarih formatına dönüştürmek istiyoruz. Aşağıdaki SQL sorgusu bunu yapacaktır:
SQLSELECT FORMAT(OrderDate, 'dd.MM.yyyy') AS KısaTarih FROM Orders
Bu sorgu, "Orders" tablosundaki her satır için "OrderDate" sütununu Türkçe kısa tarih formatına dönüştürecek ve sonuçları "KısaTarih" adlı bir sütunda gösterecektir.
Evet, başka bir yöntem de tarihleri CONVERT
fonksiyonu ile çevirmektir. Türkçe kısa tarih formatı için kullanılacak CONVERT
fonksiyonu şu şekildedir:
SQLCONVERT(varchar, OrderDate, 104) AS KısaTarih
Burada, 104
format kodu Türkçe kısa tarih formatına karşılık gelir.
Örneğin, yukarıdaki örnekteki "Orders" tablosundaki "OrderDate" sütununu Türkçe kısa tarih formatına dönüştürmek istiyorsanız, aşağıdaki SQL sorgusunu kullanabilirsiniz:
SQLSELECT CONVERT(varchar, OrderDate, 104) AS KısaTarih FROM Orders
Bu sorgu da her satır için "OrderDate" sütununu Türkçe kısa tarih formatına dönüştürür ve sonuçları "KısaTarih" adlı bir sütunda gösterir.
Başka bir yöntem de FORMAT
fonksiyonunu kullanmak yerine CONVERT
fonksiyonunu kullanmaktır. Bu yöntemde, CONVERT
fonksiyonu ile tarihi nvarchar
veri tipine dönüştürüp ardından istediğiniz formatta formatlayabilirsiniz.
Örneğin, "Orders" tablosunda "OrderDate" adlı bir tarih sütunu olduğunu varsayalım ve bu sütunu Türkçe kısa tarih formatına dönüştürmek istiyoruz. Aşağıdaki SQL sorgusu bunu yapacaktır:
SQLSELECT CONVERT(nvarchar(10), OrderDate, 104) AS KısaTarih FROM Orders
Bu sorgu, "Orders" tablosundaki her satır için "OrderDate" sütununu Türkçe kısa tarih formatına dönüştürecek ve sonuçları "KısaTarih" adlı bir sütunda gösterecektir.
Burada 104
format kodu, Türkçe kısa tarih formatına karşılık gelir. nvarchar(10)
ise, çıktının maksimum 10 karakter olacağını belirtir. Tarih uzunluğu 10 karakterdir çünkü Türkçe kısa tarih formatı "gg.aa.yyyy" şeklindedir.
Başka bir yöntem olarak, SQL Server'ın yerel FORMAT
fonksiyonu yerine .NET Framework'ün ToString()
yöntemini kullanabilirsiniz. Bu yöntem, daha esnek bir şekilde tarih biçimlendirme sağlar.
Örneğin, "Orders" tablosunda "OrderDate" adlı bir tarih sütunu olduğunu varsayalım ve bu sütunu Türkçe kısa tarih formatına dönüştürmek istiyoruz. Aşağıdaki SQL sorgusu bunu yapacaktır:
SQLSELECT OrderDate.ToString('dd.MM.yyyy') AS KısaTarih FROM Orders
Bu sorgu, .NET Framework'ün ToString()
yöntemini kullanarak "Orders" tablosundaki her satır için "OrderDate" sütununu Türkçe kısa tarih formatına dönüştürecek ve sonuçları "KısaTarih" adlı bir sütunda gösterecektir.
Bu yöntem, FORMAT
fonksiyonuna göre daha yavaş olabilir, ancak daha fazla esneklik sağlar ve daha özelleştirilebilir.
Evet, başka bir yöntem olarak DATENAME
ve DATEPART
fonksiyonlarını kullanarak da Türkçe kısa tarih formatına benzer bir şekilde tarihleri çeşitli parçalara ayırabilirsiniz. Bu yöntemde, tarihi yıl, ay ve gün olarak ayırarak ve ardından bu parçaları nokta veya başka bir karakterle birleştirerek Türkçe kısa tarih formatına benzer bir çıktı elde edebilirsiniz.
Örneğin, "Orders" tablosunda "OrderDate" adlı bir tarih sütunu olduğunu varsayalım ve bu sütunu Türkçe kısa tarih formatına dönüştürmek istiyoruz. Aşağıdaki SQL sorgusu bunu yapacaktır:
SQLSELECT CONVERT(nvarchar(2), DATEPART(dd, OrderDate)) + '.' +
CONVERT(nvarchar(2), DATEPART(mm, OrderDate)) + '.' +
CONVERT(nvarchar(4), DATEPART(yyyy, OrderDate)) AS KısaTarih
FROM Orders
Bu sorgu, "Orders" tablosundaki her satır için "OrderDate" sütununu yıl, ay ve gün olarak ayırarak ve bu parçaları nokta karakteriyle birleştirerek Türkçe kısa tarih formatına benzer bir çıktı oluşturacaktır.