Uneori se ocupă de data și ora din SQL poate fi destul de complicat. În timp ce data și ora sunt de fapt tipuri de date complet diferite, ele sunt adesea îmbinate într-un tip de date de dată datetime. Date și ore SQL singur sunt destul de simple, dar îmbinarea celor două poate fi una dintre cele mai dureroase sarcini. În acest articol, veți afla în detaliu despre tipul datetime SQL.
- Care este tipul de date DateTime?
- datetime Descriere
- Conversia altor tipuri de dată și oră la tipul de date datetime
Care este tipul de date datetime?
În SQL, datetime tipul de date date este utilizat pentru valori care conțin atât data, cât și ora. Microsoft îl definește ca un data combinată cu o oră a zilei cu secunde fracționate care se bazează pe un ceas de 24 de ore .
SQL, în mod specific, are multe tipuri de date care combină atât reprezentările datei cât și orelor, făcând lucrurile mai complexe. Cel mai utilizat este DATETIME, deoarece a fost prezent încă de la versiunile anterioare ale SQL. SQL recuperează și afișează valorile DATETIME în format „AAAA-LL-ZZ hh: mm: ss”. Intervalul acceptat este „1753-01-01 00:00:00” până la „9999-12-31 23: 59: 59.997”. Să explorăm mai detaliat tipul datetime.
datetime Descriere
Vă rugăm să verificați tabelul următor pentru a afla mai multe despre tipul datetime SQL.
Proprietate | Valoare |
Sintaxă | datetime |
Utilizare | DECLARAȚI @DataMeadatetime CREARE TABEL Tabelul 1 (Coloana1datetime) |
Format | „AAAA-LL-ZZ hh: mm: ss.nnn |
Interval de timp | 00:00:00 până la 23: 59: 59,997 |
Gama de elemente |
|
Dimensiunea stocării cum se creează o listă legată în c | 8 octeți |
Valoare implicită | 1900-01-01 00:00:00 |
Calendar | Gregorian (Include intervalul complet de ani.) |
Notă: Detaliile de mai sus se aplică tipului datetime în Transact-SQL șiSQL Server.
Deci aia e datetime în SQL. Dar ce ai face dacă ai altă întâlnire șitipuri de timp și trebuie să le convertiți în datetime tip?
Conversia altor tipuri de dată și oră la tipul de date datetime
datetime tip de date SQL include data și ora, cu o parte fracțională de 3 cifre secunde. Precizia sa este rotunjită la pași de .000, .003 sau .007 secunde. Deci, când convertiți un Data sau timp valori pentru datetime , se adaugă informații suplimentare valorii. Acest lucru se datorează faptului că datetime tipul de date conține atât data, cât și ora. Această parte a articolului explică ce se întâmplă când altele data si ora tipurile de date sunt convertite în datetime tipul de date.
Exemplul 1: conversie implicită între dată și dată-oră
DECLARE @date date = '2020-12-01' DECLARE @datetime datetime = @date
Rezultat
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Exemplul 2: conversie implicită între dată și datetime folosind CAST ()
DECLARE @thedate date = '2020-12-01' SELECT @thedate AS 'date', CAST (@thedate AS datetime) AS 'datetime'
Rezultat
@datetime @date ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Exemplul 3: conversie implicită de la smalldatetime la datetime
Când conversia este de la s malldatetime tip, orele și minutele sunt copiate. Secundele și secțiunile fracționate sunt setate la valoarea 0. Următorul cod prezintă rezultatele conversiei a smalldatetime valoare pentru a datetime valoare.
DECLARE @smalldatetime smalldatetime = '2020-12-01 12:32' DECLARE @datetime datetime = @smalldatetime SELECT @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'
Rezultat
@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00
În mod similar, puteți converti altele data și ora tipuri pentru data datime tastați fie implicit, fie folosind cast () și convertit() metode. Pentru referință, consultați tabelul de mai jos pentru a vă familiariza cu formatele tuturor tipurilor de dată și oră.
Tipul de date | Exemplu |
timp | 12:35:29. 1234567 |
Data | 08.05.2007 |
smalldatetime | 2008-05-08 12:35:00 |
datetime | 2008-05-08 12: 35: 29.123 |
datetime2 | 2008-05-08 12:35:29. 1234567 |
datetimeoffset | 2008-05-08 12: 35: 29.1234567 +12: 15 |
Cu aceasta, am ajuns la sfârșitul acestui articol. Sper că ești clar despre conținutul discutat aici. Asigurați-vă că exersați cât mai mult posibil și reveniți la experiență.
Dacă doriți să aflați mai multe despre MySQL și cunoașteți această bază de date relațională open-source, apoi consultați-ne care vine cu instruire live condusă de instructor și experiență de proiect din viața reală. Această instruire vă va ajuta să înțelegeți în profunzime MySQL și vă va ajuta să obțineți stăpânirea asupra subiectului.
Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui articol „Proceduri în SQL” și vă vom răspunde.