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 < Resime gitmek için tıklayın >
Şimdi ise örnekler konuyu pekiştirmeye çalışalım.
Örnek 1
SELECT dbo.fnYilAyGun('2012-01-02', '2020-03-10') AS TarihFarki
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
Fonksiyonumuzu yazdık, şimdi ise bunu SQL Server üzerinde oluştuğunu teyit edelim.
Oluşan Fonksiyon
< Resime gitmek için tıklayın >
Şimdi ise örnekler konuyu pekiştirmeye çalışalım.
Örnek 1
Örnek 1 Sonuç
< Resime gitmek için tıklayın >
Örnek 2
Örnek 2 Sonuç
< Resime gitmek için tıklayın >
Kaynak: https://www.ontedi.com/sql/sql-serverda-yil-ay-ve-gun-farki-gosterimi
< Bu mesaj bu kişi tarafından değiştirildi ontedi -- 21 Nisan 2020; 9:39:34 >