Merhaba arkadaşlar, bu yazımda sizlere Sql DateDiff Fonksiyonu Kullanımı konusundan bahsedeceğim.
DateDiff fonksiyonu, Sql’de belirttiğimiz iki tarih arasındaki farkı bulmamızı sağlar. DateDiff fonksiyonu kullanılırken 3 adet parametre alır. Bu parametreler sırasıyla; Tarihin hangi kısmı kullanılacak(Yıl-Ay-Gün), ikinci parametre ise karşılaştırma yapacağımız iki tarih arasında önce gelen tarih değeri, üçüncü parametre ise iki tarih arasında sonra gelen tarihtir. Değerlerimizi belirttiğimizde DateDiff Fonksiyonu bizim için iki tarih arasındaki farkı bulur ve yansıtır.
Hemen örnek kod ile işlemlerimizi gerçekleştiriyoruz.
Siparişler tablomuzun olduğunu varsayalım. Bu tablomuzda da Sipariş Tarihi kolonumuz mevcut. Sql kodumuzu Sipariş işleminin üzerinden ne kadar zaman geçmiş bu bilgiyi öğrenmek istersek Sipariş Tarihine göre sorgulama sağlayarak farkları bulabiliriz.
SELECT O.OrderDate, DATEDIFF(day, O.OrderDate, GETDATE()) AS Diff FROM Orders O WHERE O.OrderId = 1
Yukarıdaki sql komutunda Siparişler tablosuna sorgu atarak Sipariş Id’si 1 olan kayıt için günümüz tarihi ile farkını kontrol ederek Sipariş Tarihi ve Fark bilgisini göstermiş olduk.
Yukarıdaki kodu Yıl ya da Ay farkı ile kontrol etmek istersek de DATEDIFF fonksiyonunda yazan ilk parametredeki day yerine month ya da year yazarak işlemlerimizi sağlayabiliriz.
Kullanılabilecek diğer parametre tablosu aşağıdaki gibidir.
datepart name | datepart abbreviation |
---|---|
year | y, yy, yyyy |
quarter | qq, q |
month | mm, m |
dayofyear | dy |
day | dd, d |
week | wk, ww |
hour | hh |
minute | mi, n |
second | ss, s |
millisecond | ms |
microsecond | mcs |
nanosecond | ns |
Yukarıdaki tabloya ve DateDiff ile ilgili detaylı bilgi için microsoft adresini inceleyebilirsiniz.
Umarım faydalı olur.
Bir sonraki yazıda görüşmek üzere…