SQL Datetime: Vše, co potřebujete vědět



Tento článek o sql datetime vám pomůže pochopit, jak typ datetime a také jak převést z jiných typů data a času na datetime

Někdy se jedná o datum a čas v SQL může být docela složité. Zatímco datum a čas jsou ve skutečnosti zcela odlišné datové typy, často se slučují do datového typu datum a čas. Data a časy SQL samotné jsou docela jednoduché, ale jejich sloučení může být jedním z nejbolestivějších úkolů. V tomto článku se dozvíme podrobně o typu datového času SQL.

Co je datový typ datetime?

V SQL čas schůzky datový typ datum se používá pro hodnoty, které obsahují datum i čas. Microsoft definuje to jako datum v kombinaci s denní dobou s zlomkovými sekundami, které vychází z 24hodinového času .





Konkrétně SQL má mnoho datových typů, které kombinují jak reprezentaci data, tak času, což dělá věci složitějšími. Nejpoužívanější z nich je DATETIME, protože je k dispozici od dřívějších verzí SQL. SQL načte a zobrazí DATETIME hodnoty ve formátu „RRRR-MM-DD hh: mm: ss“. Podporovaný rozsah je „1753-01-01 00:00:00“ až „9999-12-31 23:59: 59,997“. Prozkoumejme typ datetime podrobněji.

popis data a času

Zkontrolujte následující tabulku a dozvíte se více o typu datetime SQL.



Vlastnictví Hodnota

Syntax

čas schůzky

Používání



DECLARE @ MyDatetimečas schůzky

VYTVOŘIT TABULKU Tabulka1 (sloupec1čas schůzky)

Formát

„RRRR-MM-DD hh: mm: ss.nnn

Časový rozsah

00:00:00 až 23:59: 59,997

Rozsahy prvků

  • YYYY jsou čtyři číslice od 1753 do 9999, které představují rok.
  • MM jsou dvě číslice v rozmezí od 01 do 12, což představuje měsíc v uvedeném roce.
  • DD jsou dvě číslice v rozmezí od 01 do 31 v závislosti na měsíci, což představuje den zadaného měsíce.
  • hh jsou dvě číslice v rozsahu od 00 do 23, které představují hodinu.
  • mm jsou dvě číslice v rozsahu od 00 do 59, což představuje minutu.
  • ss jsou dvě číslice v rozsahu od 00 do 59, což představuje druhou.
  • n * je nula až tři číslice v rozsahu od 0 do 999, které představují zlomkové sekundy.

Velikost úložiště

deklarace pole objektů v Javě

8 bytů

Výchozí hodnota

1900-01-01 00:00:00

Kalendář

Gregorián (Zahrnuje celou řadu let.)

Poznámka: Výše uvedené podrobnosti platí pro typ datetime v Transact-SQL aSQL Server.

Takže to je čas schůzky v SQL. Ale co byste dělali, kdybyste měli jiné datum ačasové typy a musíte je převést na čas schůzky typ?

Převod dalších typů data a času na datový typ datetime

The čas schůzky datový typ v SQL zahrnuje datum a čas s 3místnou zlomkovou sekundou. Jeho přesnost se zaokrouhluje na přírůstky 0,000, 0,003 nebo 0,007 sekundy. Když tedy převádíte a datum nebo čas hodnoty do čas schůzky , k hodnotě jsou přidány další informace. Je to proto, že čas schůzky datový typ obsahuje datum i čas. Tato část článku vysvětluje, co se stane, když ostatní datum a čas datové typy jsou převedeny na čas schůzky datový typ.

Příklad 1: Implicitní převod mezi datem a datetime

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

Výsledek

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

Příklad 2: Implicitní převod mezi datem a datetime pomocí CAST ()

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

Výsledek

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

Příklad 3: Implicitní převod ze smalldatetime na datetime

Když je převod ze s malldatetime typu, hodiny a minuty se zkopírují. Sekundy a zlomkové sekundy jsou nastaveny na hodnotu 0. Následující kód ukazuje výsledky převodu a malý čas hodnota a čas schůzky hodnota.

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

Výsledek

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

Podobně můžete převést další čas schůzky typy do datatime zadejte buď implicitně, nebo pomocí obsazení() a konvertovat() metody. Pro vaši referenci se podívejte do níže uvedené tabulky, abyste se seznámili s formáty všech typů data a času.

Datový typ Příklad

čas

12:35:29. 1234567

datum

8. května 2007

malý čas

08.05.2007 12:35:00

čas schůzky

08.05.2007 12:35: 29,123

datetime2

08.05.2007 12:35:29. 1234567

datetimeoffset

08.05.2007 12:35: 29,1234567 +12: 15

Tím jsme se dostali na konec tohoto článku. Doufám, že máte jasno v obsahu zde diskutovaném. Ujistěte se, že cvičíte co nejvíce a vraťte své zkušenosti.

Pokud se chcete dozvědět více o MySQL a seznamte se s touto relační databází open-source, pak se podívejte na naši který přichází s živým tréninkem vedeným instruktorem a zkušenostmi z reálného projektu. Toto školení vám pomůže porozumět MySQL do hloubky a pomůže vám dosáhnout zvládnutí předmětu.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů v tomto článku „Procedury v SQL“ a my se vám ozveme.