SEO (Arama Motoru Optimizasyonu) Mikro İnteraktif ÜCRETSİZ - Google Play'den İndirin

SQL Server'da Yıl, Ay ve Gün Farkı Gösterimi

Uygulamalarınızda iki tarih arasındaki değerleri A Yıl, B Ay, C Gün şeklinde gösterme gereği duyarız. Yaptığımız küçük bir uygulama ile bu gösterimi sağlamış olacağız.

Veritabanı işlemleri yaparken tarih verilerinin daha güzel bir gösterimi için bazı method yada fonksiyonlara ihtiyaç duyarız. Kısaca o fonksiyonu sizlere aktaralım. Fonksiyonumuz iki tane tarih verisi istemektedir. Verilen iki tarihi işledikten sonra gösterim olarak örneğin '2 Yıl 7 Ay 16 Gün' olarak bize geridönüş sağlamaktadır.
Tarih Fonksiyonu
CREATE FUNCTION dbo.fnYilAyGun
(
 @BaslangicTarihi DATETIME,
 @BitisTarihi DATETIME
)
RETURNS varchar(100)
AS
BEGIN
 DECLARE @Yil INT
 DECLARE @Ay INT
 DECLARE @Gun INT
 DECLARE @Sonuc VARCHAR(100)
 SET @Yil = DATEDIFF(yy, @BaslangicTarihi, @BitisTarihi)
 SET @Ay = DATEDIFF(mm, @BaslangicTarihi, @BitisTarihi) - (@Yil * 12)
 SET @Gun = DATEDIFF(dd, @BaslangicTarihi, @BitisTarihi) - ((@Yil * 365) + (@Ay * 30))
 IF (@Yil < 1)
  BEGIN
   SET @Yil = ''
  END
 IF (@Ay < 1)
  BEGIN
   SET @Ay = ''
  END
 IF (@Gun < 1)
  BEGIN
   SET @Gun = ''
  END
 SET @Sonuc = (' ' + CAST(@Yil AS VARCHAR(4)) + ' Yıl ' + CAST(@Ay AS VARCHAR(2)) + ' Ay ' + CAST(@Gun AS VARCHAR(2)) + ' Gün')
 SET @Sonuc = REPLACE(@Sonuc, ' 0 Yıl', '')
 SET @Sonuc = REPLACE(@Sonuc, ' 0 Ay', '')
 SET @Sonuc = REPLACE(@Sonuc, ' 0 Gün', '')
 RETURN @Sonuc
END

Fonksiyonumuzu yazdık, şimdi ise bunu SQL Server üzerinde oluştuğunu teyit edelim.
Oluşan Fonksiyon
SQL Server'da Yıl, Ay ve Gün Farkı Gösterimi


Şimdi ise örnekler konuyu pekiştirmeye çalışalım.
Örnek 1
SELECT dbo.fnYilAyGun('2012-01-02', '2020-03-10') AS TarihFarki

Örnek 1 Sonuç
SQL Server'da Yıl, Ay ve Gün Farkı Gösterimi

Örnek 2
SELECT dbo.fnYilAyGun('2018-04-20', '2018-05-28') AS TarihFarki
Örnek
SQL Server'da Yıl, Ay ve Gün Farkı Gösterimi

Yorumlar

  • Sabi Polikar

    Sabi Polikar:

    3 ay önce

    Hocam çok faydalı oldu ellerinize sağlık. Bu fonksiyonu derlemek için saatlerimi harcamıştım ama gün tarafında takılmıştım. Tekrar teşekkürler.
    1 cevapla
  • Yönetici Yorumu:

    3 ay önce

    Biz teşekkür ederiz, yardımcı olabildiysek ne mutlu.

Yorum Yaz

Avatar

REKLAM

DDos Koruma, Botnet Koruma, Layer 7 Saldırı koruması, Sanal sunucu, Vds sunucu

REKLAM

Çizgi Filmler

INSTAGRAM VIDEO İNDİR

Instagram Video İndirme Aracı

EN

  • Popüler
  • Yeni
  • Son Yorum