Tarih ve zaman fonksiyonları, MS SQL kurulumu yapıldığında hazır olarak gelen, tarih ve zaman ifadeleri üzerinde işlem yapılmasını sağlayan fonksiyonlardır. Bu fonksiyonlar şunlardır:
CURRENT_TIMESTAMP: Anlık saat ve tarih bilgisini döner.
Örnek : SELECT CURRENT_TIMESTAMP
Sonuç : 2012-03-11. 16:54:49.580.
DATEADD: Başa yazılan parametre cinsinden zamanı belirtilen ölçüde arttırır.
Örnek : SELECT DATEADD(day,2,'2009-07-20')
Sonuç : 2009-07-22 00:00:00.000
Örnek : SELECT DATEADD(year,25,'2009-07-20')
Sonuç : 2034-07-20 00:00:00.000
DATEDIFF: Başa yazılan parametre cinsinden iki tarih arasındaki farkı döner.
Örnek : SELECT DATEDIFF(dd, '04.04.1974', '02.10.2007')
Sonuç : 12000
Örnek : SELECT DATEDIFF(mm, '1991.03.13', '2012.03.11')
Sonuç : 252
DATENAME: Başa yazılan parametrenin adını döner.
Örnek : SELECT DATENAME(dy, '12.25.2012')
Sonuç : 360
Örnek : SELECT DATENAME(mm, '12.25.2012')
Sonuç : December
Örnek : SELECT DATENAME(dw, '12.25.2012')
Sonuç : Tuesday
Örnek : SELECT DATENAME(yy, '12.25.2012')
Sonuç : 2012
DATEPART: Verilen tarih-saat parametresini parçalarına ayırıp istenilen parçayı almaya yarar.
Örnek : SELECT DATEPART(wk, '03.12.2012')
Sonuç : 11
Örnek : SELECT DATEPART(dy, '03.12.2012')
Sonuç : 72
DAY: Verilen tarihin gün değerini almaya yarar.
Örnek : SELECT DAY('2012.03.11')
Sonuç : 11
GETDATE: Sistemin anlık tarih ve saat bilgisini döner.
Örnek : SELECT GETDATE()
Sonuç : 2012-03-11 16:13:16:800
GETUTCDATE: Anlık GMT(GREENWICH MEAN TIME) tarih ve saat bilgisini döner.
Örnek : SELECT GETUTCDATE()
Sonuç : 2012-03-11 14:47:55.743
ISDATE: Girilen string değeri tarih formatına uygunsa 1, değilse 0 döner.
Örnek : SELECT ISDATE('2009-07-20')
Sonuç : 1
Örnek : SELECT ISDATE('2014-18-09')
Sonuç : 0
MONTH: Verilen tarihin ay değerini almaya yarar.
Örnek : SELECT MONTH('2012.03.11')
Sonuç : 3
SYSDATETIME: Timestamp değerini bölgesel saat farklılıklarını göstermeden döner.
Örnek : SELECT SYSDATETIME()
Sonuç : 2012-03-12 11:38:10.5012793
SYSDATETIMEOFFSET: Tarih ve saati bölgesel saat farklılıklarıyla beraber döner.
Örnek : SELECT SYSDATETIMEOFFSET()
Sonuç : 2012-03-12 11:42:50.6052793 +02:00
SYSUTCDATETIME: Çalışır sistem timestamp’ini UTC(COORDINATED UNIVERSAL TIME) formatında gösterir.
Örnek : SELECT SYSUTCDATETIME()
Sonuç : 2012-03-12 09:46:48.7102793
SWITCHOFFSET: Herhangi bir tarihi başka bölge tarihine çevirmek için kullanılır. Girdi tarihte offset bilgisinin bulunması gerekir.
Örnek : SELECT SWITCHOFFSET(SYSDATETIMEOFFSET(),'-05:00')
Sonuç : 2012-03-20 13:22:57.7641100 -05:00
TODATETIMEOFFSET: Herhangi bir tarihi koruyarak sadece UTC Offset değerini ekler veya varsa değiştirir.
Örnek : SELECT TODATETIMEOFFSET(SYSDATETIMEOFFSET(),'-05:00')
Sonuç : 2012-03-20 20:26:53.3335838 -05:00
YEAR: Verilen tarihin yıl değerini almaya yarar.
Örnek : SELECT YEAR('2012.03.11')
Sonuç : 2012