SQL Server’da İki Tarih Arasındaki Yıl, Ay ve Gün Farkını Göstermek
Herkese merhaba,
Bu yazıda SQL Server’da iki tarih arasındaki yıl, ay ve gün farkını göstermek hakkında bilgi vereceğim.
SQL Server’da bazı durumlarda iki tarih arasındaki yıl, ay ve gün farkını göstermek isteyebiliriz.
Aşağıdaki kod yardımıyla bu işlemi rahatlıkla yapabilirsiniz.
DECLARE @Tarih DATETIME,
@TempTarih DATETIME,
@Yil INT,
@Ay INT,
@Gun INT;
SELECT @Tarih = '2020-01-01'; --Tarih bilgisini bu kısımdan değiştirebilirsiniz.
SELECT @TempTarih = @Tarih;
SELECT @Yil = DATEDIFF(yy, @TempTarih, GETDATE()) - CASE
WHEN (MONTH(@Tarih) > MONTH(GETDATE()))
OR
(
MONTH(@Tarih) = MONTH(GETDATE())
AND DAY(@Tarih) > DAY(GETDATE())
) THEN
1
ELSE
0
END;
SELECT @TempTarih = DATEADD(yy, @Yil, @TempTarih);
SELECT @Ay = DATEDIFF(M, @TempTarih, GETDATE()) - CASE
WHEN DAY(@Tarih) > DAY(GETDATE()) THEN
1
ELSE
0
END;
SELECT @TempTarih = DATEADD(M, @Ay, @TempTarih);
SELECT @Gun = DATEDIFF(d, @TempTarih, GETDATE());
SELECT @Yil AS Yıl,
@Ay AS Ay,
@Gun AS Gun;
Kodu çalıştırdığınızda aşağıdaki gibi bir sonuç göreceksiniz.
Görüldüğü üzere yıl, ay ve gün fark bilgisi gelmiş oldu.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.