SQL Datetime: Minden, amit tudnia kell

Ez a cikk az sql datetime-ról segít megérteni, hogyan kell datetime-t írni, és hogyan lehet átalakítani más dátum- és időtípusokról datetime-ra

Időnként a dátummal és az idővel foglalkozik SQL meglehetősen trükkös lehet. Míg a dátum és az idő valójában teljesen különböző adattípusok, gyakran egyesítik őket egy dátum és idő dátum adattípussá. SQL dátumok és idők önmagában nagyon egyszerűek, de a kettő összevonása az egyik legfájdalmasabb feladat lehet. Ebben a cikkben részletesen megismerheti az SQL időidő típusát.



Mi az a dátumidő adattípus?

Az SQL-ben dátum idő a dátum adattípust a dátumot és az időt egyaránt tartalmazó értékekhez használják. Microsoft aként definiálja dátum kombinálva a napszakkal és a tört órákkal, amelyek 24 órás órára épülnek .



Az SQL kifejezetten sok adattípussal rendelkezik, amelyek mind a dátum, mind az idő ábrázolását kombinálják, így a dolgok összetettebbé válnak. A legelterjedtebb a DATETIME, mivel az SQL korábbi verziói óta jelen van. Az SQL „ÉÉÉÉ-HH-NN óó: pp: ss” formátumban lekéri és megjeleníti a DATETIME értékeket. A támogatott tartomány: „1753-01-01 00:00:00” és „9999-12-31 23: 59: 59.997”. Fedezzük fel részletesebben a dátumidő típusát.

dátum idő Leírás

Kérjük, ellenőrizze a következő táblázatot, ha többet szeretne megtudni az SQL időidő típusáról.



Ingatlan Érték

Szintaxis

dátum idő

Használat



NYILATKOZZON @MyDatetimedátum idő

CREATE TABLE1 táblázat (1. oszlopdátum idő)

Formátum

’ÉÉÉÉ-HH-NN óó: pp: ss.nnn

Időtartományban

00:00:00 és 23:59: 59.997 között

Elemtartományok

  • YYYY négy számjegy 1753 és 9999 között, amelyek egy évet jelentenek.
  • Az MM kétjegyű, 01-től 12-ig terjed, ami egy hónapot jelent a megadott évben.
  • A DD kétjegyű, 01-től 31-ig terjed, hónaptól függően, amely a megadott hónap napját jelenti.
  • hh két számjegy, 00 és 23 között, amelyek az órát jelentik.
  • A mm két számjegy, 00 és 59 között, ami a percet jelenti.
  • ss két számjegy, 00 és 59 között, ami a másodikat jelenti.
  • n * nulla-három számjegy, 0 és 999 között, amelyek a tört másodperceket jelentik.

Tárolási méret

szubsztring az SQL szerver példában

8 bájt

Alapértelmezett érték

1900-01-01 00:00:00

Naptár

Gergely (Az évek teljes skáláját tartalmazza.)

Jegyzet: A fenti részletek a Transact-SQL és a dátum idő típusára vonatkoznakSQL szerver.

Szóval, ez az dátum idő az SQL-ben. De mit tennél, ha lenne más dátumod és idõtípusokat, és ezeket konvertálnia kell dátum idő típus?

Más dátum- és időtípus konvertálása dátumidő adattípussá

Az dátum idő adattípus be SQL tartalmazza a dátumot és az időt, egy háromjegyű tört másodperc részből áll. Pontosságát .000, .003 vagy .007 másodperces lépésekre kerekítjük. Tehát, ha átalakítja a dátum vagy idő értékeket dátum idő , extra információ kerül hozzá az értékhez. Ez azért van, mert a dátum idő az adattípus dátumot és időt is tartalmaz. A cikk ezen része elmagyarázza, hogy mi történik, ha más dátum és idő adattípusok konvertálódnak a dátum idő adattípus.

1. példa: Dátum és dátumidő közötti implicit konverzió

DECLARE @date date = '2020-12-01' DECLARE @datetime datetime = @date

Eredmény

@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21

2. példa: Dátum és dátumidő implicit konverziója a CAST () használatával

DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'datetime'

Eredmény

@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21

3. példa: Implicit átalakítás smalldatetime-ból datetime-ba

Amikor a konverzió s-ból származik Malldatetime típus, az órák és a percek másolásra kerülnek. A másodpercek és a tört másodpercek értéke 0. A következő kód az a konvertálás eredményeit mutatja smalldatetime érték a dátum idő érték.

DECLARE @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'

Eredmény

@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00

Hasonlóképpen átalakíthat másokat is dátum idő típusok adatidő vagy implicit módon, vagy használva öntvény() és alakítani() mód. Tájékoztatásul nézze meg az alábbi táblázatot, ahol megismerkedhet az összes dátum- és időtípus formátumával.

Adattípus Példa

idő

12:35:29. 1234567

dátum

2007-05-08

smalldatetime

2007-05-08 12:35:00

dátum idő

2007-05-08 12: 35: 29.123

datetime2

2007-05-08 12:35:29. 1234567

datetimeoffset

2007-05-08 12: 35: 29.1234567 +12: 15

Ezzel a cikk végére értünk. Remélem, tisztában van az itt tárgyalt tartalommal. Győződjön meg róla, hogy a lehető legtöbbet gyakorolja, és állítsa vissza a tapasztalatait.

Ha többet szeretne megtudni a MySQL és ismerje meg ezt a nyílt forráskódú relációs adatbázist, majd nézze meg a mi amely oktató által vezetett élő képzéssel és valós projekt-tapasztalattal jár. Ez a képzés segít megérteni a MySQL-t alaposan, és elsajátítja a témát.

Van egy kérdésünk? Kérjük, említse meg ennek az „Eljárások az SQL-ben című cikknek a megjegyzés rovatában, és mi kapcsolatba lépünk Önnel.