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

Atgriež Variant (Long) vērtību, kas norāda laika intervālu skaitu starp diviem norādītajiem datumiem.

Sintakse

DateDiff ( intervāls, datums1, datums2 [, pirmā_nedēļas_diena] [, pirmā_gada_nedēļa] )

Funkcijas DateDiff sintaksē ir šādi argumenti:

Arguments

Apraksts

intervāls

Obligāts arguments. Virknes izteiksme, kas ir laika intervāls, ko izmantojat, lai aprēķinātu starpību starp datums1 un datums2.

datums1, datums2

Obligāts arguments. Variants (datums). Divi datumi, kas jāizmanto aprēķinā.

pirmā_nedēļas_diena

Neobligāts arguments. A konstante kas norāda nedēļas pirmo dienu. Ja nav norādīta, tiek pieņemts, ka tā ir svētdiena.

pirmā_gada_nedēļa

Neobligāts arguments. Konstante, kas norāda gada pirmo nedēļu. Ja nav norādīta, tiek pieņemts, ka pirmā nedēļa ir nedēļa, kurā ir 1. janvāris.

Iestatījumi

Intervālaarguments ir šādi iestatījumi:

Iestatījums

Apraksts

gggg

Gads

q

Ceturksnis

m

Mēnesis

y

Gada diena

d

Diena

w

Weekday

ww

Nedēļa

h

Stunda

n

Minūte

s

Sekunde

Argumentam pirmā_nedēļas_diena ir šādi iestatījumi:

Konstante

Vērtība

Apraksts

vbUseSystem

0

Izmantojiet NLS API iestatījumu.

vbSunday

1

Svētdiena (noklusējums)

vbMonday

2

Pirmdiena

vbTuesday

3

Otrdiena

vbWednesday

4

Trešdiena

vbThursday

5

Ceturtdiena

vbFriday

6

Piektdiena

vbSaturday

7

Sestdiena

Konstante

Vērtība

Apraksts

vbUseSystem

0

Izmantojiet NLS API iestatījumu.

vbFirstJan1

1

Sākas ar nedēļu, kurā ir 1. janvāris (noklusējums).

vbFirstFourDays

2

Sāciet ar pirmo nedēļu, kurā jaunajā gadā ir vismaz četras dienas.

vbFirstFullWeek

3

Sāciet ar pirmo pilno gada nedēļu.

Piezīmes

Funkciju DateDiff var izmantot , lai noteiktu norādīto laika intervālu skaitu starp diviem datumiem. Piemēram, varat izmantot DateDiff , lai aprēķinātu dienu skaitu starp diviem datumiem vai nedēļu skaitu no šodienas līdz gada beigām.

Lai aprēķinātu dienu skaitu starp datums1 un datums2, varat izmantot gada dienu ("y") vai Dienu ("d"). Ja intervāls ir Nedēļas diena ("w"), DateDiff atgriež nedēļu skaitu starp abiem datumiem. Ja datums1 ir pirmdiena, DateDiff skaita pirmdienu skaitu līdz datumam2. Tiek skaitīts datums2 , bet ne datums1. Tomēr , ja intervāls ir Nedēļa ("ww"), funkcija DateDiff atgriež kalendāra nedēļu skaitu starp abiem datumiem. Tiek skaitīts svētdienu skaits starp datums1 undatums2. DateDiff skaita datumu2 , ja tas ir svētdiena; bet netiek skaitīts datums1, pat ja tas ir svētdiena.

Ja datums1 attiecas uz vēlāku laika punktu, kas ir lielāks par datumu2, funkcija DateDiff atgriež negatīvu skaitli.

Arguments pirmā_nedēļas_diena ietekmē aprēķinus, kuros tiek lietoti intervāla "w" un "ww" simboli.

Ja datums1vai datums2datuma literālis, norādītais gads kļūst par šī datuma pastāvīgu daļu. Tomēr, ja datums1 vai datums2 ir iekļauts pēdiņās (" "), un gads tiek izlaists, kods tiek ievietots katru reizi, kad tiek novērtēta datuma1 vai datuma2 izteiksme. Tas ļauj rakstīt kodu, ko var izmantot dažādos gados.

Salīdzinot 31. decembri līdz uzreiz nākamā gada 1. janvārim, DateDiff uz gadu ("yyyy") atgriež vērtību 1, kaut gan ir pagājusi tikai diena.

Piezīme.:  Ja datums1 undatums2, ja rekvizīta Kalendārs iestatījums ir Gregora kalendārs, nodrošinātā datumam ir jābūt Gregora kalendāram. Ja kalendārs ir Hidžras, nodrošinātā datuma vērtībai ir jābūt Hidžras.

DateDiff Query piemēri

Izteiksme

Rezultāti

SELECT DateDiff("yyyy",#01/01/2010#,[Datumspārdošanas]) AS Izteiksme1 FROM ProductSales;

Atgriež starpību starp Date2 un Date1 (ja datums1 ir vecākais, bet datumu2 — kā jaunāko) kā "gadu" skaitu. Rezultāts. Starpība starp lauka "Pārdošanas datums" un datuma "01/01/2010" vērtībām kā "Gadu skaits".

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

Atgriež starpību starp sistēmas datumu un "DatumsPārdošanas datums" kā "Ceturkšņu skaits" (atbilstoši kalendāra gadam), un tiek parādīta kolonnā "DienasPārdošanas". atgriež starpību starp sistēmas datumu un "Datumspārdošanas datums" kā "Mēnešu skaits" un parāda kolonnā "DienasPārdošanas".

SELECT DateDiff("y",[Datumspārdošanas_datums],Date()) AS DaysSinceSale FROM ProductSales;

Atgriež starpību starp sistēmas datumu un "Datumspārdošanas datums" kā "Dienu skaits" un parāda kolonnā "DienasPārdošanas".

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

Atgriež starpību starp sistēmas datumu un "Datumspārdošanas datums" kā "Dienu skaits" un parāda kolonnā "DienasPārdošanas".

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

Atgriež starpību starp sistēmas datumu un "Datumspārdošanas datums" kā "Darbdienu" skaitu, un parāda kolonnā "DienasPārdošanas". Ja "Datumspārdošanas datums" ir pirmdienā, DateDiff skaita pirmdienu skaitu līdz sistēmas datumam. Tiek skaitīts sistēmas datums, bet ne vērtība "Datumspārdošanas datums".

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

Atgriež starpību starp sistēmas datumu un "Datumspārdošanas datums" kā "kalendārs nedēļas" skaitu, un parāda kolonnā "DienasSinceSale". Tiek skaitīts svētdienu skaits starp "Datumspārdošanas datums" un "sistēmas datums". Sistēmas datums tiks skaitīts, ja tas iekrīt svētdienā. bet netiek ieskaitīts "Pārdošanas datums", pat ja tas iekrīt svētdienā.

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

Atgriež starpību starp sistēmas datumu un "DateTime" kā "Stundu" skaitu, un parāda kolonnā "DienasSinceSale".

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

Atgriež starpību starp sistēmas datumu un "DateTime" kā "minūšu" skaitu un parāda kolonnā "DienasPārdošanas".

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

Atgriež starpību starp sistēmas datumu un "DateTime" kā "sekunžu" skaitu, un parāda kolonnā "DienasPārdošanas".

Izteiksmes piemērs

Funkcijas DateDiff izmantošana izteiksmē     Funkciju DateDiff varat izmantot visur, kur varat izmantot izteiksmes. Piemēram, pieņemsim, ka jums ir forma, ko izmantojat, lai izpildītu klientu pasūtījumus. Tabulā Pasūtījumi ir lauks ar nosaukumu ReceiveBefore, kurā ir datums, līdz kuram klientam jāsaņem pasūtījums. Funkciju DateDiff var izmantot ar formas tekstlodziņu, lai parādītu, cik dienas jāpaiet, pirms pasūtījums ir jānosūta.

Pieņemot, ka pasūtījuma nosūtīšanai ir nepieciešamas desmit dienas, tekstlodziņa rekvizīts Vadīklas avots ir jāiestata šādi:

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

Atverot formu formas skatā, tekstlodziņā tiek parādīts dienu skaits, kas pa kreisi pirms pasūtījuma ir jānosūta. Ja vēl nav vairāk nekā 10 dienas, pirms klientam ir jāsaņem pasūtījums, numurs tekstlodziņā ir negatīvs un norāda, cik dienas ilgi būs nokavēts pasūtījums, ja tas tiks nosūtīts uzreiz.

VBA piemērs

DateDiff funkcijas izmantošana VBA kodā    

Šajā piemērā funkcija DateDiff tiek izmantota, lai parādītu dienu skaitu starp norādīto datumu un šodienu.

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

Skatiet arī

Pareizās datuma funkcijas izvēle

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.