21 Eylül 2013 Cumartesi

SQL Serverda Yılın,Ayın ve Haftanın İlk ve Son Günleri

Örneğin bugünün 29.12.2011 olduğunu düşünürsek ayın ilk günü bulmak için öncelikle bu tarihin ayın kaçıncı günü olduğu DAY fonksiyonu ile bulup daha sonra çıkan gün kadar eksi gün sayısını elimizdeki tarih değerine eklersek ayın ilk gününü bulmuş oluruz. Şimdi bugünün tarihini baz alarak örneklerimizi yapalım.

DECLARE @tarih DATETIME=GETDATE() SELECT 'Onceki Ayın Son Gunu' Aciklama,CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(@tarih)),@tarih),112) Tarih UNION ALL SELECT 'Ayın İlk Günü',CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(@tarih)-1),@tarih),112) AS Date_Value UNION ALL SELECT 'Bugunun Tarihi',CONVERT(VARCHAR(10),@tarih,112) AS Date_Value UNION ALL SELECT 'Ayın Son Günü',CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(DATEADD(mm,1,@tarih))),DATEADD(mm,1,@tarih)),112) UNION ALL SELECT 'Sonraki Ayın İlk Günü',CONVERT(VARCHAR(10),DATEADD(dd,-(DAY(DATEADD(mm,1,@tarih))-1),DATEADD(mm,1,@tarih)),112) UNION ALL SELECT 'Haftanın İlk Günü', DATEADD(ww, DATEDIFF(ww,0,GETDATE()), 0) UNION ALL SELECT 'Sonraki Haftanın İlk Günü', DATEADD(ww, DATEDIFF(ww,0,GETDATE())+1, 0) UNION ALL SELECT 'Yılın İlk Günü',DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) UNION ALL SELECT 'Yılın Son Günü',DATEADD(dd,-1,DATEADD(yy,0,DATEADD(yy,DATEDIFF(yy,0,getdate())+1,0)))

Hiç yorum yok:

Yorum Gönder

Değerli yorumlarınız için şimdiden teşekkür ederim.