Piezīmes
Lai piekļūtu šai lapai, ir nepieciešama autorizācija. Varat mēģināt pierakstīties vai mainīt direktorijus.
Lai piekļūtu šai lapai, ir nepieciešama autorizācija. Varat mēģināt mainīt direktorijus.
| Funkcijas | Attiecas uz |
|---|---|
| DateAdd DateDiff |
|
| TimeZoneOffset |
|
| Function | Attiecas uz |
|---|---|
| DateAdd | |
| DateDiff | |
| TimeZoneOffset |
Pievieno vai atrod atšķirību datuma/laika vērtībās un konvertē starp lokālo laiku un UTC.
Apraksts
Funkcija DateAdd datuma/laika vērtībai pievieno vairākas vienības. Rezultāts ir jauna datuma/laika vērtība. Varat arī atņemt vienību skaitu no datuma/laika vērtības, norādot negatīvu vērtību.
Funkcija DateDiff atgriež starpību starp divām datuma/laika vērtībām. Rezultāts ir vesels vienību skaits.
Abām funkcijām vienības var būt TimeUnit.Milliseconds,TimeUnit.Seconds,TimeUnit.Minutes,TimeUnit.Hours,TimeUnit.Days,TimeUnit.Months,TimeUnit.Quarters vai TimeUnit.Years. Pēc noklusējuma abas funkcijas izmanto TimeUnit.Days kā vienības.
Funkcija TimeZoneOffset atgriež minūšu skaitu starp lietotāja vietējo laiku un UTC (koordinētais universālais laiks).
Varat izmantot DateAdd ar , TimeZoneOffset lai konvertētu starp lietotāja vietējo laiku un UTC (koordinētais universālais laiks). Saskaitot TimeZoneOffset vietējo laiku konvertēs uz UTC, un atņemot to (pievienojot negatīvo) tiks konvertēts no UTC uz vietējo laiku.
Papildinformāciju skatiet arī datu tipos Date, Time un DateTime un darbā ar datumiem un laikiem .
Sintakse
DateAdd( DateTime, saskaitījums [, Vienības ] )
- DateTime - nepieciešams. Datuma/laika vērtība, kurā jādarbojas.
- Papildinājums - Nepieciešams. Skaitlis, izteikts Vienībās, kuru pievienot DateTime.
- Vienības - pēc izvēles. Pievienojamo vienību tips:TimeUnit.Milliseconds,TimeUnit.Seconds,TimeUnit.Minutes,TimeUnit.Hours,TimeUnit.Days,TimeUnit.Months,TimeUnit.Quarters vaiTimeUnit.Years. Ja tas nav norādīts, tiek izmantotas TimeUnit.Days .
DateDiff( StartDateTime, EndDateTime [, Vienības ] )
- StartDateTime - nepieciešams. Sākuma datuma/laika vērtība.
- EndDateTime - nepieciešams. Beigu datuma/laika vērtība.
- Vienības - pēc izvēles. Atņemamo vienību tips:TimeUnit.Milliseconds,TimeUnit.Seconds,TimeUnit.Minutes,TimeUnit.Hours,TimeUnit.Days,TimeUnit.Months,TimeUnit.Quarters vaiTimeUnit.Years. Ja tas nav norādīts, tiek izmantotas TimeUnit.Days .
TimeZoneOffset( [ DateTime ] )
- DateTime - pēc izvēles. Datuma/laika vērtība, kurai jāatgriež nobīde. Pēc noklusējuma tiek izmantots pašreizējais datums/laiks.
Piemēri
Visos šajos piemēros pieņemiet, ka pašreizējais laiks un datums ir July 15, 2013, 1:02 PM.
Vienkāršs DateAdd
| Formula | Apraksts | Rezultāts |
|---|---|---|
|
Teksts( DateAdd( Tagad(), 3 ), "dd-mm-gggg hh:mm" ) |
Pašreizējam datumam un laikam pievieno trīs dienas (noklusējuma vienības). | "18-07-2013 13:02" |
|
Text( DateAdd( Tagad(), 4, TimeUnit.Hours ), "dd-mm-gggg hh:mm" ) |
Pievienojiet pašreizējam datumam un laikam četras stundas. | "15-07-2013 17:02" |
|
Text( DateAdd( Šodien(), 1, TimeUnit.Months ), "dd-mm-gggg hh:mm" ) |
Pievieno vienu mēnesi pašreizējam datumam bez laika, jo Today neatgriež laika komponentu. | "15-08-2013 00:00" |
|
Teksts( DateAdd( Tagad(), -30, TimeUnit.Minutes ), "dd-mm-gggg hh:mm" ) |
Noņem 30 minūtes no pašreizējā datuma un laika. | "15-07-2013 12:32" |
Vienkāršs DateDiff
| Formula | Apraksts | Rezultāts |
|---|---|---|
| DateDiff( Tagad(), DateValue ("1/1/2014") ) | Atgriež divu vienību starpību noklusējuma vienībās TimeUnit.Days. | 170 |
| DateDiff( Now(), DateValue("1/1/2014"), TimeUnit.Months ) | Atgriež abu vērtību starpību timeunit.Months | 6 |
| DateDiff( Tagad(), Šodien(), TimeUnit.Minutes ) | Atgriež starpību starp pašreizējo datumu/laiku un pašreizējo datumu vienīgi (bez laika) minūtēs. Tā kā Now ir vēlāks nekā Today, rezultāts būs negatīvs. | -782 |
Datumu atšķirība ar daļskaitļa rezultātiem
Funkcija DateDiff atgriež tikai veselu atņemto vienību skaitu, un precizitāte tiek norādīta norādītajā vienībā. Lai aprēķinātu starpību ar augstāku precizitāti, izmantojiet mazāku vienību un pārvērtiet rezultātu atbilstoši, piemēram, tālāk redzamajiem piemēriem.
| Formula | Apraksts | Rezultāts |
|---|---|---|
| DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Hours ) | Minūtes/sekundes tiek ignorētas, atšķirību pamatojot ar laiku līdz stundai. | 1 |
| DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Minutes )/60 | Minūtes tiek izmantotas starpībā, un rezultāts tiek dalīts ar 60, lai būtu starpība stundās. | 0.5 |
| DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Seconds )/3600 | Minūtes un sekundes tiek izmantotas starpībā; un rezultāts tiek dalīts ar 3600, lai būtu starpība stundās. | 0.51 |
Konvertēšana par UTC
Lai konvertētu uz UTC (koordinēto universālo laiku), pievienojiet norādītajam TimeZoneOffset laikam.
Piemēram, iedomājieties, ka pašreizējais datums un laiks ir July 15, 2013 1:02 PM Klusā okeāna vasaras laikā (PDT, UTC-7). Lai noteiktu pašreizējo laiku UTC sistēmā, izmantojiet:
- DateAdd( Tagad(), TimeZoneOffset(), TimeUnit.Minutes )
TimeZoneOffset noklusējuma laiks ir pašreizējais laiks, tāpēc tam nav jānodod arguments.
Lai skatītu rezultātu, izmantojiet Text funkciju ar formātu dd-mm-yyyy hh:mm, kas atgriezīs 15-07-2013 20:02.
Konvertēšana no UTC
Lai konvertētu no UTC, atņemiet TimeZoneOffset (pievienojot negatīvo) par doto laiku.
Piemēram, iedomājieties, ka UTC datums un laiks July 15, 2013, 8:02 PM tiek glabāts mainīgajā ar nosaukumu StartTime. Lai pielāgotu laiku lietotāja laika joslai, izmantojiet:
- DateAdd( StartTime, −TimeZoneOffset( StartTime ), TimeUnit.Minutes )
Ņemiet vērā negatīvo zīmi iepriekš TimeZoneOffset , lai atņemtu nobīdi, nevis to pievienotu.
Lai skatītu rezultātu, izmantojiet funkciju Text ar formātu dd-mm-yyyy hh:mm, kas radīs rezultātu 15-07-2013 13:02, ja atrodaties Klusā okeāna vasaras laika joslā.