MSSQL Yılın, Ayın ve Haftanın İlk ve Son Günleri
Microsoft SQL Server’da tarih işlemlerinin çok sık yapılmasından ve değişik biçimlere ihtiyaç duyulmasından dolayı SQL Server çok çeşitli tarih fonksiyonlarına içinde barındırır. Çoğu uzman kullanıcıda bunları bilir ve kullanır. Ama öyle zaman bir gelir ki var olan tarih fonksiyonları istediğimiz sonuç için yetersiz kalabilir. Bu yüzden ihtiyaç duyulan tarih değerlerinin yada biçimlerinin elde edilmesi için farklı yöntemler kullanılabiliriz. Hayal gücünüze ve ihtiyacınıza göre sizlerde bu örneklerden yola çıkarak çözümler üretebilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
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))) |