Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
| Functions | Érvényesség |
|---|---|
| DateAdd DateDiff |
|
| TimeZoneOffset |
|
| Function | Érvényesség |
|---|---|
| DateAdd | |
| DateDiff | |
| TimeZoneOffset |
Adatok dátum- és időértékekhez történő hozzáadására, dátum- és időértékek közötti különbség meghatározására, illetve a helyi idő és az egyezményes világidő közötti átváltásra használhatók.
Ismertetés
A DateAdd függvény több egységet ad hozzá egy dátum/idő értékhez. Az eredmény egy új dátum- és időérték lesz. Negatív érték megadásával a dátum- és időértékeket csökkentheti adott egységgel.
A DateDiff függvény két dátum/idő érték különbségét adja vissza. Az eredmény a mértékegységek egész száma.
Mindkét függvény mértékegysége lehet TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Months, TimeUnit.Quarters, vagy TimeUnit.Years. Alapértelmezés szerint mindkét függvény a TimeUnit.Days függvényt használja egységként.
A TimeZoneOffset függvény a felhasználó helyi ideje és az UTC (egyezményes világidő) közötti percek számát adja vissza.
A használatával DateAdd átválthat a TimeZoneOffset felhasználó helyi ideje és az UTC (egyezményes világidő) között. A hozzáadással TimeZoneOffset a helyi idő UTC-vé alakul, és a kivonás (a negatív hozzáadása) utc-ről helyi időre változik.
További információt a Dátum, idő és DateIdő adattípusok és a Dátumok és időpontok használata című témakörben talál.
Szintaxis
DateAdd( DateTime, Addition [, Units ] )
- DateTime - Kötelező. A művelethez használandó dátum- és időérték.
- Kiegészítés - kötelező. A DateTime értékhez hozzáadandó Egységek száma.
- Egységek - opcionális. A hozzáadni kívánt egységek típusa: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Month, TimeUnit.Quarters vagy TimeUnit.Years. Ha nincs megadva, a rendszer a TimeUnit.Days értéket használja.
DateDiff( StartDateTime, EndDateTime [, Egységek ] )
- StartDateTime – Kötelező. A kezdő dátum- és időérték.
- EndDateTime – Kötelező. A befejező dátum- és időérték.
- Egységek - opcionális. A kivonandó egységek típusa: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Days, TimeUnit.Month, TimeUnit.Quarters vagy TimeUnit.Years. Ha nincs megadva, a rendszer a TimeUnit.Days értéket használja.
TimeZoneOffset( [ DateTime ] )
- DateTime – Nem kötelező. Az a dátum- és időérték, amelynek az eltolását vissza kell adni. Alapértelmezés szerint az aktuális dátumot és időpontot használja a rendszer.
Példák
Az alábbi példákban az aktuális dátum és időpont 2013. július 15., 13:02.
Egyszerű DateAdd
| Képlet | Ismertetés | Eredmény |
|---|---|---|
|
Text( DateAdd( Now(), 3 ), "dd-mm-yyyyy hh:mm" ) |
Három nap (az alapértelmezett időegység) hozzáadása az aktuális dátumhoz és időponthoz. | "18-07-2013 13:02" |
|
Text( DateAdd( Now(), 4, TimeUnit.Hours ), "dd-mm-yyyyy hh:mm" ) |
Négy óra hozzáadása az aktuális dátumhoz és időponthoz. | "15-07-2013 17:02" |
|
Text( DateAdd( Today(), 1, TimeUnit.Months ), "dd-mm-yyyyy hh:mm" ) |
Egy hónap hozzáadása az aktuális dátumhoz, időpont nélkül, mivel a Today (Ma) függvény nem ad vissza időpont-összetevőt. | "15-08-2013 00:00" |
|
Text( DateAdd( Now(), -30, TimeUnit.Minutes ), "dd-mm-yyyyy hh:mm" ) |
30 perc kivonása az aktuális dátumból és időpontból. | "15-07-2013 12:32" |
Egyszerű DateDiff
| Képlet | Ismertetés | Eredmény |
|---|---|---|
| DateDiff( Now(), DateValue("2014.01.01.") ) | A két egység közötti különbséget adja eredményül a TimeUnit.Days alapértelmezett mértékegységében | 170 |
| DateDiff( Now(), DateValue("1/1/2014"), TimeUnit.Months ) | A TimeUnit.Month függvényben megadott két érték különbségét adja eredményül | 6 |
| DateDiff( Now(), Today(), TimeUnit.Minutes ) | Az aktuális dátum és időpont, illetve az aktuális (időpont nélküli) dátum közötti különbség visszaadása percben. Mivel a Now (Most) értéke későbbi, mint a Today (Ma) értéke, az eredmény negatív lesz. | -782 |
Dátumok közötti különbség és a részeredmények
A függvény DateDiff csak a kivonandó egységek egész számát adja vissza, a pontosság pedig a megadott egységben van megadva. A különbség nagyobb pontosságú kiszámításához használjon kisebb egységet, és az eredményt ennek megfelelően alakítsa át, mint az alábbi példákban.
| Képlet | Ismertetés | Eredmény |
|---|---|---|
| DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Hours ) | A rendszer figyelmen kívül hagyja a perceket/másodpercet, a különbség az órára kerekített időn alapul. | 1 |
| DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Minutes )/60 | A perceket a különbségben használják, az eredményt pedig 60-nal osztják, hogy a különbséget órában kapják meg. | 0.5 |
| DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Seconds )/3600 | A perceket és másodperceket a különbségben használják, az eredményt pedig 3600-nal osztják, hogy a különbséget órában kapják meg. | 0.51 |
Átváltás UTC-re
Az UTC (koordinált egyetemes idő) időpontra való konvertáláshoz adja hozzá az TimeZoneOffset adott időpontot.
Tegyük fel például, hogy az aktuális dátum és időpont 2013. július 15., 13:02 a csendes-óceáni nyári idő (PDT UTC-7) szerint. Az UTC szerinti aktuális idő meghatározásához használja a következő képletet:
- DateAdd( Now(), TimeZoneOffset(), TimeUnit.Minutes )
TimeZoneOffset alapértelmezett érték az aktuális időpontra, ezért nem kell argumentumot megadnia.
Az eredmény megjelenítéséhez használja a Text függvényt az dd-mm-yyyy hh:mm formátummal, amely a 15-07-2013 20:02 értéket fogja visszaadni.
Átváltás UTC-ről
Az UTC-ből való konvertáláshoz vonja ki a TimeZoneOffset (negatív érték hozzáadásával) értéket az adott időpontra.
Tegyük fel például, hogy az UTC szerinti dátum és időpont 2013. július 15., 20:02, amely a StartTime változóban van tárolva. Az idő felhasználó időzónájára való átváltásához használja az alábbi képletet:
- DateAdd( StartTime, −TimeZoneOffset( StartTime ), TimeUnit.Minutes )
Jegyezze fel a negatív előjelet, TimeZoneOffset hogy a hozzáadás helyett kivonja az eltolást.
Az eredmény megjelenítéséhez használja a Text függvényt az dd-mm-yyyy hh:mm formátummal. Az eredmény 15-07-2013 13:02 lesz, ha Ön a csendes-óceáni nyári idő szerinti időzónában tartózkodik.