SQL Server’da Ayın Son Gününü Bulmak
Herkese merhaba,
Bu yazıda SQL Server’da ayın son gününü bulmak hakkında bilgi vereceğim.
SQL Server’da bazı durumlarda bir ayın son gününü bulmak isteyebiliriz.
Aşağıdaki koddan istediğinizi kullanarak bir ayın son gününü bulabilirsiniz.
DECLARE @tarih DATETIME = '2019-10-01';
SELECT EOMONTH(@tarih) [Ayın Son Günü],
DATEADD(MONTH, MONTH(@tarih) - 12, DATEFROMPARTS(YEAR(@tarih), 12, 31)) AS [Ayın Son Günü],
DATEADD(DAY, -1, DATEADD(MONTH, 1, DATEFROMPARTS(YEAR(@tarih), MONTH(@tarih), 1))) AS [Ayın Son Günü],
DATEADD(DAY, -1, DATEADD(MONTH, 1, CONVERT(CHAR(6), @tarih, 112) + '01')) AS [Ayın Son Günü],
DATEADD(MONTH, 1 + DATEDIFF(MONTH, 0, @tarih), -1) AS [Ayın Son Günü],
DATEADD(MONTH, DATEDIFF(MONTH, 0, @tarih) + 1, 0) - 1 AS [Ayın Son Günü],
DATEFROMPARTS(
YEAR(@tarih),
MONTH(@tarih),
CASE
WHEN MONTH(@tarih) IN ( 4, 6, 9, 11 ) THEN
30
WHEN MONTH(@tarih) IN ( 1, 3, 5, 7, 8, 10, 12 ) THEN
31
ELSE
CASE
WHEN MONTH(@tarih) = 2
AND TRY_PARSE(CONCAT('02', '/29/', YEAR(@tarih))AS DATETIME) IS NOT NULL THEN
29
ELSE
28
END
END
) AS [Ayın Son Günü];
Yukarıdaki kodlardan Ayın Son Günü yazanlardan herhangi birini kullanabilirsiniz. Kodu çalıştırdığınızda aşağıdaki sonucu göreceksiniz.
Görüldüğü üzere ayın son günü bilgisi geldi.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.