SQL Server’da İki Saat Arasındaki Farkı Alan Fonksiyon

Herkese merhaba,

Bu yazıda SQL Server’da iki saat arasındaki farkı alan fonkisyon hakkında bilgi vereceğim.

SQL Server’da bazı durumlarda iki saat arasındaki farkı hesaplamak isteyebiliriz.

Aşağıdaki fonksiyon yardımıyla bu işlemi rahatlıkla yapabilirsiniz.

CREATE FUNCTION dbo.SaatFarki
(
    @BaslangicSaat TIME(7),
    @BitisSaat TIME(7)
)
RETURNS VARCHAR(10)
AS
BEGIN
    DECLARE @Fark INT = DATEDIFF(SECOND, @BaslangicSaat, @BitisSaat);
    DECLARE @FarkSaat INT = @Fark / 3600;
    DECLARE @FarkDakika INT = (@Fark % 3600) / 60;
    DECLARE @FarkSaniye INT = ((@Fark % 3600) % 60);
    DECLARE @Sonuc VARCHAR(10);
    SET @Sonuc
        = RIGHT('00' + CAST(@FarkSaat AS VARCHAR(2)), 2) + ':' + RIGHT('00' + CAST(@FarkDakika AS VARCHAR(2)), 2) + ':'
          + RIGHT('00' + CAST(@FarkSaniye AS VARCHAR(2)), 2);
    RETURN @Sonuc;
END;

--İki saat arasındaki farkı hesaplamak 

SELECT dbo.SaatFarki('13:50:00', '14:10:00'),
       dbo.SaatFarki('13:50:00', '15:51:05'),
       dbo.SaatFarki('13:50:00', '15:35:45');

Kodu çalıştırdığınızda aşağıdaki gibi bir sonuç alacaksınız.

SQL Server’da İki Saat Arasındaki Farkı Alan Fonksiyon

Görüldüğü üzere iki saat arasındaki fark hesaplanmış oldu.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

332 Kez Okundu