T-SQL’de Tarihler Üzerinde Islem Yapmak için Kullanilan Fonksiyonlar

T-SQL de Tarih islemleri için kullandigimi birçok fonksiyon vardir. Bunlardan en çok kullanilanlar bir liste halinde verdim. Tarih üzerinde islemler yapabilmek için bu kullanisli fonksiyonlari bilmemiz gerekiyor.  Bu fonksiyonlardan bazilari tarihden tarih çikarmak, tarih içinden gün ay yil bulmak, Belirli bir tarihe gün, ay yil ekleyerek olusan tarihi bulmak gibi siralanabilir.

Bu konuda çok fazla bir sey anlatmaya gerek duymuyorum. Asagidaki liste incelenecek olursa konunun anlasilacagini düsünüyorum.

.

SELECT CURRENT_TIMESTAMP                        — Sonuç :  2009-07-20 10:39:15.097

 

SELECT DATEADD(day,2,‘2009-07-20’)              — Sonuç :  2009-07-22 00:00:00.000

 

SELECT DATEADD(month,2,‘2009-07-20’)            — Sonuç :  2009-09-20 00:00:00.000

 

SELECT DATEDIFF(day,‘2009-07-20’,‘2015-02-09’)  — Sonuç :  2030 (Gün olarak aldik)

 

SELECT DATENAME(month, ‘2009-07-20’)            — Sonuç :  July

 

SELECT DATENAME(weekday, ‘2009-07-20’)          — Sonuç :  Monday

 

SELECT DATEPART(month, ‘2009-07-20’)            — Sonuç :  7

 

–Suanki Zaman ve Tarihi verir

SELECT GETDATE()                                — Sonuç :  2009-07-20 11:52:32.893

 

— Londra – Greenwich Saati

SELECT GETUTCDATE()                             — Sonuç :  2009-07-20 08:52:44.693

 

–Girilen string degerin tarih olup olmadigini belirler. 1 ise tarih 0 ise degil.

SELECT ISDATE(‘2009-07-20’)                     — Sonuç :  1

SELECT ISDATE(‘2014-18-09’)                     — Sonuç :  0

.

 

–girilen Tarihin gün bilgisini verir.

SELECT DAY(‘2009-07-20’)                        — Sonuç :  20

–girilen Tarihin ay bilgisini verir.

SELECT MONTH(‘2009-07-20’)                      — Sonuç :  7

–Girilen Tarihin yil bilgisini verir.

SELECT YEAR(‘2009-07-20’)                       — Sonuç :  2009

 

 

–Sistem Zamanini verir.

SELECT SYSDATETIME()       — Sonuç :  2009-07-20 11:53:15.7138432

 

–Sistem Zamanini Greenwiche göre verir.

SELECT SYSUTCDATETIME()    — Sonuç :  2009-07-20 08:53:25.9958432

 

 

— DATEADD: Suank, Tarihe 7 Gün ekleyelim.

— Bunun için 1 hafta eklemek veya 7 gün eklemek yeterlidir.

SELECT DATEADD(DD, 7, GETDATE())

SELECT DATEADD(WW, 1, GETDATE())

 

— Suanki Tarihe göre Ayin hangi günündeyiz.

SELECT DAY(GETDATE())

 

— Suanki Ayin Ilk günü

SELECT DATEADD(DD,-(DAY(GETDATE())-1),CONVERT(VARCHAR,GETDATE(),112))

 

— Suanki Ayin son günü

SELECT DATEADD(DD,-(DAY(DATEADD(MM,1,GETDATE()))),DATEADD(MM,1,

       CONVERT(VARCHAR,GETDATE(),112)))

      

— DATEDIFF: Ocak 1 2007 den bugune kadar kaç gün geçti

SELECT DATEDIFF(DD,‘20070101’,GETDATE())

 

— DATENAME: Suanki Ay

SELECT DATENAME(MM, GETDATE())

 

— Hangi Aydayiz.

SELECT MONTH(GETDATE())

 

— Hangi Yildayiz

SELECT YEAR(CURRENT_TIMESTAMP)

 

 

2 thoughts on “T-SQL’de Tarihler Üzerinde Islem Yapmak için Kullanilan Fonksiyonlar

  1. yani veritabaninda hiç bir timestamp olmadanmi ? Eger tablolarinda böyle bir kayit yoksa transaction loglardan bu bilgiyi nasil aliriz bir arastiralim. Bulursam yazarim burda.

  2. kolay gelsin bise sorucam veri tabaninda son 3 günün verisini dinamik olarak nasil çekeblirim

Bir cevap yazın

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