SQL Server Tarih Fonksiyonları ve Format Çeviri İşlemleri

Sık kullanılan tarih fonksiyonları ve tarih formatı nasıl kullanılacağını göz atalım.

SQL Server Tarih Fonksiyonları

GETDATE() Fonksiyonu, Sunucunun şimdi ki tarih ve saatini döndürürken GETUTCDATE() Fonksiyonu ise Evrensel (UTC) biçimde tarih ve saatini döndürür.

SELECT GETDATE();
SELECT GETUTCDATE();
SELECT SYSDATETIME();
SELECT CURRENT_TIMESTAMP;

TARİH FORMATI NASIL ALINIR?

SQL Server’da istediğiniz tarih format değeri için SELECT ifadesi ile CONVERT fonksiyonunu ve tarih formatı seçeneğini kullanmalıyız. Örneğin YYYY-MM-DD formatını almak için aşağıdaki sorguyu kullanırız.

SELECT CONVERT(VARCHAR, GETDATE(), 23);

MM/DD/YY  Formatı ise

SELECT CONVERT(VARCHAR, GETDATE(), 1)

Tüm format seçeneklerinin listesini görmek için buraya tıklayarak tabloyu göz atarak ihtiyacınıza göre şekillendirebilirsiniz.

AY, GÜN VE YIL FONKSİYONU NASIL KULLANILIR

  • YEAR(): Belirtilen tarihin yıl kısmını döndürür.
  • MONTH(): Belirtilen tarihin ay kısmını döndürür.
  • DAY(): Belirtilen tarihin gün kısmını döndürür
DECLARE @Tarih DATETIME = GETDATE()
SELECT DAY(@Tarih) AS Gün, MONTH(@Tarih) AS Ay, YEAR(@Tarih) AS Yıl

BUGÜNÜN TARİHİ AY, GÜN,YIL, SAAT VE DAKİKA PARÇALAMA İŞLEMİ NASIL YAPILIR?

DATEPART Fonksiyonu, Belirtilen tarihin seçili bir parçasını (örneğin yıl, ay, gün, saat, dakika, saniye gibi) kısmını döndürür.

DECLARE @Tarih DATETIME = GETDATE() 
SELECT DATEPART(YEAR, @Tarih) AS YIL, DATEPART(MONTH, @Tarih) AS AY, DATEPART(DAY, @Tarih) AS Gün, DATEPART(HOUR, @Tarih) AS SAAT , DATEPART(MINUTE, @Tarih) AS Dakika;

BELİRLİ TARİHİ ÜZERİNE EKLEME VE EKSİLTME İŞLEMİ NASIL YAPILIR?

DATEADD Fonksiyonu, Belirtilen tarihe belirli bir zaman aralığı ekler veya çıkarır.

DECLARE @Tarih DATETIME = GETDATE()
SELECT DATEADD(DAY, 5, @Tarih); --Bugünün tarihin üzerine 5 gün ekler
SELECT DATEADD(MONTH, -1, @Tarih); --Bugünün tarihini 1 ay çıkarır
SELECT DATEADD(WW, 1, @Tarih); --Bugünün tarihini 1 hafta ekler

TARİHİ METİN OLARAK NASIL DÖNDÜRÜLÜR?

DATENAME Fonksiyonu, Belirtilen tarihin belirli bir parçasının sayısal yerine adını döndürür.

DECLARE @Tarih DATETIME = GETDATE()
SELECT DATENAME(MONTH, @Tarih) AS AY,DATENAME(WEEKDAY, @Tarih) AS Günü;

İKİ TARİH ARASINDAKİ FARKI NASIL BULUNUR?

DATEDIFF Fonksiyonu, İki tarih arasındaki farkı belirli bir zaman biriminde döndürür.

DECLARE @Tarih DATETIME = GETDATE()
DECLARE @GecenYilTarihi DATETIME = DATEADD(YEAR,-1,GETDATE())

SELECT DATEDIFF(DAY, @GecenYilTarihi, @Tarih); --Geçen Yıl Tarihi ile bugünün tarihi arasındaki gün farkını döndürür.

STRING DEĞERİN TARİH OLUP OLMADIĞINI NASIL KONTROL EDİLİR?

ISDATE() Fonksiyonu kullanarak, string değerinin tarih formata uygun olup olmadığını 0 veya 1 döndürür.

SELECT ISDATE('2024-07-14') AS Kontrol --1/True/Doğru Döndürür
SELECT ISDATE('2024-13-14') AS Kontrol --0/False/Yanlış Döndürür

SONUÇ

Tarih fonksiyon ve tarih formatı ilgili örnekler

Temel ve sık kullanılan parametre değerleri gösterilmiştir. Desteklediği diğer parametreleri ise Microsoft yazısının göz atmanızı tavsiye ederim.

Kaynak

Date and time data types and functions

Göz atmak isteyebileceğiniz diğer yazılarım

Leave a Reply