MS Access Veritabanları, VBA ve SQL Kullanımı

Microsoft Access'e dair herşey...

DateDiff Fonksiyonu

FONKSİYONLAR

Tarih/Saat Fonksiyonları
DateDiff Fonksiyonu

Açıklama

DateDiff  fonksiyonu, parametrede belirtmiş olan tarihe gün, hafta, ay, yıl, hafta, haftasonu, üç aylık dönem, saat, dakika, saniye cinsinden değerler eklemek veya çıkarmak için kullanılır.

Söz Dizimi

DateAdd (aralık,tarih1,tarih2,haftanınilkgunu,yılınilkhaftası)

PARAMETRELER

DEĞER
AÇIKLAMA
yyyy
Yıl
q
Üç Aylık Dönem
m
Ay
y
Yılın Günü
d
Gün
w
Hafta Sonu
ww
Hafta
h
Saat
n
Dakika
s
Saniye
Tablo-1 (aralık)


DEĞER
AÇIKLAMA
0
NLS API Ayarı
1
Pazar (Varsayılan Değer)
2
Pazartesi
3
Salı
4
Çarşamba
5
Perşembe
6
Cuma
Tablo-2 (haftanınilkgünü)

DEĞER
AÇIKLAMA
0
NLS API Ayarı
1
1 Ocak’ı içeren ilk haftayı kullanın (varsayılan değer)
2
En az 4 günü olan yılın ilk haftasını kullan.
3
Yılın ilk tam haftasını kullan.
Tablo-3 (yılınilkhaftası)

PARAMETRELER
  • aralık: Tablo-1 de belirtilen değerlerden herhangi birini ifade eder.
  • tarih1: farkı alınacak tarihin başlangıcını ifade eder.
  • tarih2: farkı alınacak tarihin sonunu ifade eder.
  • haftanınilkgunu: Varsayılan değer 1'
  • yılınilkhaftası: Varsayılan değer 1'dir
Örnekler


Hemen bir örnekle komutumuzu pekiştirelim.
Personelin doğum tarihinden sonra bugüne kadar kaç gün geçmiş,

Personelin Doğum Tarihi: 01/01/1999 olsun.
SonuçDateDiff("d", Date(),#01/01/1999#)

7383 gün geçmiş peki kaç ay geçmiş?

SonuçDateDiff("m", Date(),#01/01/1999#)

242 ay geçmiş, Peki kaç 3 aylık dönem geçmiş?

SonuçDateDiff("q", Date(),#01/01/1999#)

80 tane 3 Aylık dönem geçmiş, Peki kaç saat geçmiş?

SonuçDateDiff("h", Date(),#01/01/1999#)

177192 saat geçmiş.

Ya da siparişler tablosunda bulunan sipariş tarihine belirli bir gün eklenerek son teslim zamanı elde edilebilir. Bunun gibi örnekler çoğaltılabilir.

SQL Kullanımı ve Sonucu

DateDiff Fonksiyonu

DateDiff Fonksiyonu

Yukarıdaki örnekte İletme Tarihi ile Oluşturma Tarihini arasındaki geçen gün farkı hesaplanmaktadır. 

Yılbaşından itibaren kaç hafta geçmiş Hemen yazalım.

DateDiff("ww",#1/1/2019#, Date())


Sonuç: 251 olacaktır.


VBA Kullanımı ve Sonucu


DateDiff Fonksiyonu

VBA Örneğinde, 1/1/2009 tarihinden, günümüze kadar kaç gün geçtiğini aşağıdaki komutla bulabiliriz.


VBA Kod Örneği
Option Compare Database
Option Explicit

Sub DateDiffExample()

Dim fark Integer
fark = DateDiff("d",#1/1/2009#,Date())

'Return
'3903

End Sub




Varsayılan değerler İşletim Sisteminin Bölge ve Dil seçeneklerindeki ayarlardan etkilenir



Tarih1 parametresi, Tarih2 parametresinden küçük olmalıdır. Aksi takdirde sonuç negatif çıkacaktır.


DateAdd fonksiyonu ile belirli bir tarihe ekleme ve çıkarma yaparken DateDiff fonksiyonu  ile 2 tarih arasındaki fark hesaplanır.

Bir makalemizin daha sonuna gelmiş bulunmaktayız. Yorumlarınızı ve eleştirilerinizi bekliyorum.

Şimdilik,
Hoşcakalın...

Yorum Gönder

0 Yorumlar