Applies ToAccess untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Mengembalikan Varian (Long) yang menentukan jumlah interval waktu di antara dua tanggal yang ditentukan.

Sintaks

DateDiff ( interval, date1, date2 [, firstdayofweek] [, firstweekofyear] )

Sintaks fungsi DateDiff memiliki argumen ini:

Argumen

Deskripsi

interval

Diperlukan. Ekspresi string yang merupakan interval waktu yang Anda gunakan untuk menghitung selisih antara tanggal1 dan tanggal2.

tanggal1, tanggal2

Diperlukan. Varian (Tanggal). Dua tanggal yang ingin Anda gunakan dalam perhitungan.

firstdayofweek

Opsional. konstanta yang menentukan hari pertama dalam seminggu. Jika tidak ditentukan, Minggu dianggap sebagai hari pertama dalam seminggu.

firstdayofyear

Opsional. Konstanta yang menentukan minggu pertama dalam setahun. Jika tidak ditentukan, minggu pertama diasumsikan sebagai minggu munculnya tanggal 1 Januari.

Pengaturan

Interval argumen memiliki pengaturan ini:

Pengaturan

Deskripsi

yyyy

Tahun

q

Kuartal

m

Bulan

y

Hari dalam setahun

d

Hari

w

Hari kerja

ww

Minggu

h

Jam

n

Menit

s

Detik

Argumen firstdayofweek memiliki pengaturan ini:

Konstanta

Nilai

Deskripsi

vbUseSystem

0

Gunakan pengaturan API NLS.

vbSunday

1

Minggu (default)

vbMonday

2

Senin

vbTuesday

3

Selasa

vbWednesday

4

Rabu

vb Kamis

5

Kamis

vbFriday

6

Jumat

vbSaturday

7

Sabtu

Konstanta

Nilai

Deskripsi

vbUseSystem

0

Gunakan pengaturan API NLS.

vbFirstJan1

1

Mulai dengan minggu di mana 1 Januari terjadi (default).

vbFirstFourDays

2

Mulailah dengan minggu pertama yang memiliki setidaknya empat hari dalam tahun baru.

vbFirstFullWeek

3

Mulai dengan minggu penuh pertama dalam setahun.

Keterangan

Anda dapat menggunakan fungsi DateDiff untuk menentukan berapa banyak interval waktu tertentu yang ada di antara dua tanggal. Misalnya, Anda mungkin menggunakan DateDiff untuk menghitung jumlah hari antara dua tanggal, atau jumlah minggu antara hari ini dan akhir tahun.

Untuk menghitung jumlah hari antara tanggal1 dan tanggal2, Anda dapat menggunakan Hari dalam setahun ("y") atau Hari ("d"). Ketika interval adalah Weekday ("w"), DateDiff mengembalikan jumlah minggu di antara dua tanggal. Jika tanggal1 jatuh pada hari Senin, DateDiff menghitung jumlah Senin hingga tanggal2. Ini menghitung tanggal2 tapi tidak tanggal1. Namun, jika interval adalah Minggu ("ww"), fungsi DateDiff mengembalikan jumlah minggu kalender di antara dua tanggal. Ini menghitung jumlah Hari Minggu antara tanggal1 dan tanggal2. DateDiff menghitung tanggal2 jika jatuh pada hari Minggu; tetapi tidak menghitung tanggal1, bahkan jika jatuh pada hari Minggu.

Jika date1 merujuk ke titik selanjutnya dalam waktu daripada date2, fungsi DateDiff mengembalikan angka negatif.

Argumen firstdayofweek mempengaruhi perhitungan yang menggunakan simbol interval "w" dan "ww".

Jika tanggal1 atau tanggal2 adalah terbaca sebagai tanggal, tahun yang ditentukan menjadi bagian permanen dari tanggal tersebut. Namun, jika tanggal1 atau tanggal2 dimasukkan dalam tanda kutip ganda (" "), dan Anda menghilangkan tahun, tahun saat ini disisipkan dalam kode Anda setiap kali ekspresi tanggal1 atau tanggal2 dievaluasi. Ini memungkinkan untuk menulis kode yang dapat digunakan dalam tahun yang berbeda.

Ketika membandingkan tanggal 31 Desember dengan 1 Januari tahun berikutnya, DateDiff untuk Tahun ("yyyy") mengembalikan 1, meskipun hanya satu hari yang berlalu.

Catatan:  Untuk tanggal1 dan tanggal2, jika pengaturan properti Kalender adalah Gregorian, tanggal yang disediakan harus gregorian. Jika kalender adalah Hijriyah, tanggal yang disediakan harus Hijriyah.

Contoh Kueri DateDiff

Ekspresi

Hasil

SELECT DateDiff("yyyy",#01/01/2010#,[DateofSale]) AS Expr1 FROM ProductSales;

Mengembalikan selisih antara Date2 dan Date1 (menganggap Date1 sebagai tanggal terlama dan Date2 sebagai yang terbaru) sebagai jumlah 'Tahun'. Hasil: Selisih antara nilai dalam bidang "DateofSale" dan tanggal "01/01/2010" sebagai jumlah 'Tahun'.

SELECT DateDiff("q",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateofSale" sebagai jumlah 'Kuartal' (berdasarkan tahun kalender) dan ditampilkan dalam kolom "DaysSinceSale". mengembalikan selisih antara tanggal sistem dan "DateofSale" sebagai jumlah 'Bulan' dan ditampilkan dalam kolom "DaysSinceSale".

SELECT DateDiff("y",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateofSale" sebagai jumlah 'Hari' dan ditampilkan dalam kolom "DaysSinceSale".

SELECT DateDiff("d",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateofSale" sebagai jumlah 'Hari' dan ditampilkan dalam kolom "DaysSinceSale".

SELECT DateDiff("w",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateofSale" sebagai jumlah 'Hari Kerja' dan ditampilkan dalam kolom "DaysSinceSale". Jika "DateofSale" jatuh pada hari Senin, DateDiff menghitung jumlah Senin hingga tanggal sistem. Ini menghitung tanggal sistem tetapi bukan nilai dalam "DateofSale".

SELECT DateDiff("ww",[DateofSale],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateofSale" sebagai jumlah "Minggu Kalender" dan ditampilkan dalam kolom "DaysSinceSale". Ini menghitung jumlah Hari Minggu antara "DateofSale" dan "tanggal sistem". Ini akan menghitung tanggal sistem jika jatuh pada hari Minggu; tetapi tidak menghitung "DateofSale", bahkan jika jatuh pada hari Minggu.

SELECT DateDiff("h",[DateTime],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateTime" sebagai jumlah 'Jam' dan ditampilkan dalam kolom "DaysSinceSale".

SELECT DateDiff("n",[DateTime],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateTime" sebagai jumlah 'Menit' dan ditampilkan dalam kolom "DaysSinceSale".

SELECT DateDiff("s",[DateTime],Date()) AS DaysSinceSale FROM ProductSales;

Mengembalikan selisih antara tanggal sistem dan "DateTime" sebagai jumlah 'detik' dan ditampilkan dalam kolom "DaysSinceSale".

Contoh ekspresi

Menggunakan fungsi DateDiff dalam ekspresi     Anda dapat menggunakan fungsi DateDiff di mana pun Anda dapat menggunakan ekspresi. Misalnya, Anda memiliki formulir yang Anda gunakan untuk memenuhi pesanan pelanggan. Dalam tabel Pesanan, Anda memiliki bidang bernama ReceiveBefore yang berisi tanggal di mana pelanggan perlu menerima pesanan. Anda dapat menggunakan fungsi DateDiff dengan kotak teks pada formulir untuk menampilkan jumlah hari tersisa sebelum pesanan harus dikirimkan.

Dengan asumsi diperlukan waktu sepuluh hari untuk mengirimkan pesanan apa pun, Anda mengatur properti Sumber Kontrol dari kotak teks sebagai berikut:

=DateDiff("d", Now(), [Orders].[ ReceiveBefore])-10

Saat Anda membuka formulir dalam tampilan Formulir, kotak teks menampilkan jumlah hari tersisa sebelum pesanan harus dikirimkan. Jika ada kurang dari 10 hari tersisa sebelum pelanggan perlu menerima pesanan, angka dalam kotak teks negatif dan menunjukkan berapa hari terlambat pesanan akan terjadi jika dikirim segera.

Contoh VBA

Menggunakan fungsi DateDiff dalam kode VBA    

Contoh ini menggunakan fungsi DateDiff untuk menampilkan jumlah hari antara tanggal tertentu dan hari ini.

Dim TheDate As Date    ' Declare variables.Dim MsgTheDate = InputBox("Enter a date")Msg = "Days from today: " & DateDiff("d", Now, TheDate)MsgBox Msg

Lihat Juga

Memilih fungsi tanggal yang benar

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.