Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
SQL-adatbázis a Microsoft Fabricben
A cikk szakaszai lefedik Transact-SQL dátum- és időpontadat típusát és funkcióját.
- Dátum- és időadattípusok
-
Dátum- és időfüggvények
- Függvények, amelyek rendszer dátum- és időértékeit adják vissza
- Olyan függvények, amelyek dátum- és időidő-részeket adnak vissza
- Olyan függvények, amelyek a részükből dátum- és időértékeket adnak vissza
- Olyan függvények, amelyek dátum- és időkülönbséget adnak vissza
- Függvények, amelyek módosítják a dátum- és időértékeket
- Olyan függvények, amelyek beállítják vagy visszaadják a session formátum funkciókat
- Függvények, amelyek validálják és időértékeket
- Dátummal és időponttal kapcsolatos cikkek
Dátum- és időadatok típusai
A Transact-SQL dátum- és időpont-adattípusok az alábbi táblázatban találhatók:
| Adattípus | Formátum | Tartomány | Pontosság | Tárolási méret (bájt) | Felhasználó által definiált törtmásodperces pontosság | Időzóna eltérése |
|---|---|---|---|---|---|---|
| time | HH:mm:ss[.nnnnnnn] | 00:00:00.0000000-től 23:59:59.999999-ig | 100 nanoszekundum | 3-tól 5-ig | Igen | Nem |
| date | yyyy-MM-dd | 0001-01-01-től 9999-12-31-ig | 1 nap | 3 | Nem | Nem |
| smalldatetime | yyyy-MM-dd HH:mm:ss | 1900-01-01-től 2079-06-06-ig | 1 perc | 4 | Nem | Nem |
| datetime | yyyy-MM-dd HH:mm:ss[.nnn] | 1753-01-01-től 999-12-31-ig | 0,00333 másodperc | 8 | Nem | Nem |
| datetime2 | yyyy-MM-dd HH:mm:ss[.nnnnnnnn] | 0001-01-01 00:00:00.0000000-ig 9999-12-31-ig 23:59:59.9999999 | 100 nanoszekundum | 6-tól 8-ig | Igen | Nem |
| datetimeoffset | yyyy-MM-dd HH:mm:ss[.nnnnnnn] [+|-]HH:mm | 0001-01-01 00:00:00.0000000 9999-12-31 23:59:59.9999999 (UTC-ben) | 100 nanoszekundum | 8–10 | Igen | Igen |
Megjegyzés:
A Transact-SQL sorverziós adattípus nem dátum vagy időpont adattípus. Az időbélyeg a rowversion elavult szinonimája.
Dátum- és időfüggvények
Az alábbi táblázatok felsorolják a Transact-SQL dátum- és időfüggvényeket. További információ a determinizmusról: Determinisztikus és Nemdeterminista függvények.
Függvények, amelyek rendszer dátum- és időértékeit adják vissza
Transact-SQL az összes rendszer dátum- és időértékét az SQL Server példánya futó számítógép operációs rendszeréből vezeti le.
Nagyobb pontosságú rendszer dátum- és időfüggvények
Az SQL Server 2008 (10.0.x) óta az Database Engine a GetSystemTimeAsFileTime() Windows API segítségével vezeti le a dátum- és időértékeket. A pontosság attól függ, hogy melyik számítógép hardverén és Windows verzióján fut az SQL Server példánya. Ennek az API-nak a precizitása 100 nanoszekundumra rögzített. Használd a GetSystemTimeAdjustment() Windows API-t a pontosság meghatározására.
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| SYSDATETIME | SYSDATETIME ( ) | Returner egy datetime2(7) értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut. A visszaadott érték nem tartalmazza az időzóna eltolást. | datetime2(7) | Nemdeterminisztikus |
| SYSDATETIMEOFFSET | SYSDATETIMEOFFSET ( ) | Visszaad egy datetimeoffset(7) értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut. A visszaadott érték tartalmazza az időzóna elmozdulást is. | datetimeoffset(7) | Nemdeterminisztikus |
| RENDSZERI IDŐ | RENDSZERI IDŐ ( ) | Visszaad egy datetime2(7) értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut. A függvény a dátum- és időértékeket UTC időként (Koordinált Univerzális Idő) adja vissza. | datetime2(7) | Nemdeterminisztikus |
Alacsonyabb pontosságú rendszer dátum- és időfüggvények
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| CURRENT_TIMESTAMP | CURRENT_TIMESTAMP | Visszaad egy dátum-idő értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut. A visszaadott érték nem tartalmazza az időzóna eltolást. | datetime | Nemdeterminisztikus |
| GETDATE | GETDATE ( ) | Visszaad egy dátum-idő értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut. A visszaadott érték nem tartalmazza az időzóna eltolást. | datetime | Nemdeterminisztikus |
| GETUTCDATE | GETUTCDATE ( ) | Visszaad egy dátum-idő értéket, amely tartalmazza annak a számítógépnek a dátumát és idejét, amelyen az SQL Server példánya fut. A függvény a dátum- és időértékeket UTC időként (Koordinált Univerzális Idő) adja vissza. | datetime | Nemdeterminisztikus |
| CURRENT_DATE | CURRENT_DATE | Olyan dátumértéket ad vissza, amely csak annak a számítógépnek a dátumát tartalmazza, amelyen az adatbázis motor példánya fut. A visszaadott érték nem tartalmazza az időt és az időzóna eltolást. | date | Nemdeterminisztikus |
Olyan függvények, amelyek dátum- és időidő-részeket adnak vissza
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| DATE_BUCKET | DATE_BUCKET (dátum, szám, dátum, eredet) | Visszaadja az egyes dátum-idő vödör kezdetének értékét az eredeti paraméter által meghatározott időbélyegből, vagy az alapértelmezett eredetértéket, 1900-01-01 00:00:00.000 ha az eredeti paraméter nincs megadva. |
A visszatérési típus a dátumhoz megadott argumentumtól függ. | Nemdeterminisztikus |
| DÁTUMNÉV | DATENAME ( datepart, datepart ) | Egy karakterláncot ad vissza, amely a megadott dátumot jelöli. | nvarchar | Nemdeterminisztikus |
| DÁTUMRÉSZ | DATEPART ( datepart, datepart ) | Egy egész számot ad vissza, amely a megadott dátumot jelöli. | int | Nemdeterminisztikus |
| DATETRUNC | DATETRUNC ( datepart, date ) | Egy bemeneti dátumot ad vissza, amelyet egy megadott dátumrészre vágtak. | A visszatérési típus a dátumhoz megadott argumentumtól függ. | Nemdeterminisztikus |
| NAP | NAP ( dátum ) | Egy egész számot ad vissza, amely a megadott dátum napos részét jelöli. | int | Determinisztikus |
| HÓNAP | HÓNAP ( dátum ) | Egy egész számot ad vissza, amely egy meghatározott dátum hónap részét jelöli. | int | Determinisztikus |
| ÉV | ÉV ( dátum ) | Egy egész számot ad vissza, amely egy meghatározott dátum évrészét jelöli. | int | Determinisztikus |
Olyan függvények, amelyek a részükből dátum- és időértékeket adnak vissza
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| DATEFROMPARTS | DATEFROMPARTS ( év, hónap, nap ) | A megadott év, hónap és nap értékét adja vissza. | date | Determinisztikus |
| DATETIME2FROMPARTS | DATETIME2FROMPARTS ( év, hónap, nap, óra, perc, másodpercek, törtszám, precizitás ) | A megadott dátum és idő datetime2 értékét adja vissza, a megadott pontossággal. | datetime2(pontos) | Determinisztikus |
| DATETIMEFROMPARTS | DATETIMEFROMPARTS ( év, hónap, nap, óra, perc, másodperc, milliszekundum ) | Megadja a megadott dátum és idő dátum értékét. | datetime | Determinisztikus |
| DÁTUMIDŐTOFFSETFROMPARTS | DÁTUMTIMEOFFSETFROMPARTS (év, hónap, nap, óra, perc, másodpercek, törtszámok, hour_offset, minute_offset, precizitás) | A megadott dátum és idő értékét adja vissza, a megadott eltolásokkal és pontossággal. | datetimeoffset (preciitás) | Determinisztikus |
| KISDÁTUMIDŐFROMPARTS | KISDÁTUMTIMEFROMPARTS ( év, hónap, nap, óra, perc ) | A megadott dátumhoz és időponthoz smalldatetime értéket ad vissza. | smalldatetime | Determinisztikus |
| TIMEFROMPARTS | TIMEFROMPARTS ( óra, perc, másodpercek, törtszámok, precízitás ) | Időértéket ad vissza a megadott időre, a megadott pontossággal. | Idő (precízió) | Determinisztikus |
Olyan függvények, amelyek dátum- és időkülönbséget adnak vissza
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| DATEDIFF | DATEDIFF ( dátumrész, kezdeti dátum, végdátum ) | Adja vissza a dátum vagy időpont határainak számát, két meghatározott dátum között átvészelve. | int | Determinisztikus |
| DATEDIFF_BIG | DATEDIFF_BIG ( dátumrész, kezdési dátum, végdátum ) | Adja vissza a dátum vagy időpont határainak számát, két meghatározott dátum között átvészelve. | bigint | Determinisztikus |
Függvények, amelyek módosítják a dátum- és időértékeket
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| DATEADD | DATEADD (dátumosa, szám, dátum ) | Új dátumidő-értéket ad vissza azzal, hogy egy intervallum hozzáad a megadott dátumhoz. | A dátumargumentus adattípusa | Determinisztikus |
| EOMONTH | EOMONTH ( start_date [ , month_to_add ] ) | A hónap utolsó napját adja vissza, amely tartalmazza a megadott dátumot, opcionális eloltással. | A visszacsatolás típusa az start_date argumentum, vagy alternatívaként a dátum adattípusa. | Determinisztikus |
| KAPCSOLÓ OFFSET | SWITCHOFFSET (DATETIMEOFFSET,time_zone ) | A SWITCHOFFSET megváltoztatja a DATETIMEOFFSET érték időzóna eltolódását, és megőrzi az UTC értéket. | datetimeoffset a DATETIMEOFFSET törthelyes pontosságával | Determinisztikus |
| TODATETIMEOFFSET | TODATETIMEOFFSET (kifejezés, time_zone ) | A TODATETIMEOFFSET átalakítja a datetime2 értéket datetimeoffset értékké. A TODATETIMEOFFSET a datetime2 értéket helyi időben értelmezi a megadott time_zone esetén. | datetime-offset a datetime argumentum törthelyes pontosságával | Determinisztikus |
Olyan függvények, amelyek beállítják vagy visszaadják a session formátum funkciókat
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| @@DATEFIRST | @@DATEFIRST | Visszaadja a jelenlegi értéket a SET DATEFIRST ülésre. | tinyint | Nemdeterminisztikus |
| ELŐBB A DÁTUM BEÁLLÍTÁSA | SET DATEFIRST { number | @number_var } | A hét első napját 1 és 7 közötti számra állítja be. | Nem alkalmazható | Nem alkalmazható |
| DÁTUMFORMÁTUM BEÁLLÍTÁSA | SET DATEFORMAT { format | @format_var } | Megadja a dateparts (hónap/nap/év) sorrendjét a datetime vagy smalldatetime adatok beviteléhez. | Nem alkalmazható | Nem alkalmazható |
| @@LANGUAGE | @@LANGUAGE | Visszaadja a jelenleg használt nyelv nevét. @@LANGUAGE nem dátum vagy idő függvény. Azonban a nyelvi beállítás befolyásolhatja a dátumfüggvények kimenetét. | Nem alkalmazható | Nem alkalmazható |
| HALMAZNYELV | HALMAZNYELV { [ N ] 'nyelv' | @language_var } | A session és a rendszer üzenetek nyelvi környezetét állítja be. A SET LANGUAGE nem dátum vagy idő függvény. Azonban a nyelvi beállítás befolyásolja a dátumfüggvények kimenetét. | Nem alkalmazható | Nem alkalmazható |
| sp_helplanguage | sp_helplanguage [ [ @language = ] 'nyelv' ] | Információkat ad az összes támogatott nyelv dátumformátumáról.
sp_helplanguage nem dátum vagy idő tárolására szolgáló eljárás. Azonban a nyelvi beállítás befolyásolja a dátumfüggvények kimenetét. |
Nem alkalmazható | Nem alkalmazható |
Függvények, amelyek validálják és időértékeket
| Funkció | Szemantika | Visszaadott érték | Adattípus visszaadva | Determinizmus |
|---|---|---|---|---|
| ISDATE | ISDATE ( kifejezés ) | Meghatározza, hogy egy datetime vagy smalldatetime bemeneti kifejezésnek van-e érvényes dátum vagy idő értéke. | int | Az ISDATE determinisztikus csak a CONVERT függvényrel használatos, amikor a CONVERT stílusparaméter meg van szabva, és ha a stílus nem egyenlő 0, 100, 9 vagy 109. |
Dátummal és időponttal kapcsolatos cikkek
| Cikk | Description |
|---|---|
| FORMÁTUM | A megadott formátummal és opcionális kultúrával formázott értéket ad vissza. Használd a FORMAT funkciót a dátum/idő és számértékek helyi formázásához stringként. |
| SZEREPLÉS ÉS ÁTTÉRÉS | Információt nyújt a dátum- és időértékek átalakításáról a string literal-okra, valamint más dátum- és időformátumokról. |
| Nemzetközi Transact-SQL nyilatkozatok írása | Irányelveket ad az adatbázisok és adatbázis-alkalmazások hordozhatóságára, amelyek Transact-SQL utasításokat használnak egyik nyelvről a másikra, vagy több nyelvet támogatnak. |
| ODBC skaláris függvények | Információkat nyújt az ODBC skalárfüggvényekről, amelyek Transact-SQL utasításokban használhatók. Tartalmazza az ODBC dátum- és időfunkciókat. |
| IDŐZÓNÁBAN | Időzóna átalakítást biztosít. |