Noen ganger håndtere dato og tid i SQL kan være ganske vanskelig. Mens dato og klokkeslett faktisk er helt forskjellige datatyper, blir de ofte slått sammen til en datatype for datetime. SQL datoer og klokkeslett alene er ganske enkle, men å slå sammen de to kan være en av de mest smertefulle oppgavene. I denne artikkelen vil du lære om SQL datetime-type i detalj.
- Hva er DateTime-datatypen?
- datetime Beskrivelse
- Konvertering av andre dato- og tidstyper til datatypen datetime
Hva er datetime datatypen?
I SQL, dato tid datatype brukes for verdier som inneholder både dato og klokkeslett. Microsoft definerer det som en dato kombinert med en tid på dagen med fraksjonelle sekunder som er basert på en 24-timers klokke .
SQL spesifikt, har mange datatyper som kombinerer både dato- og tidsrepresentasjoner som gjør ting mer komplekse. Den mest brukte er DATETIME, siden den har vært til stede siden de tidligere versjonene av SQL. SQL henter og viser DATETIME-verdier i ‘ÅÅÅÅ-MM-DD tt: mm: ss’ format. Det støttede området er ‘1753-01-01 00:00:00’ til ‘9999-12-31 23: 59: 59.997’. La oss utforske datatypen mer detaljert.
datetime Beskrivelse
Vennligst sjekk tabellen nedenfor for å vite mer om typen SQL datetime.
Eiendom | Verdi |
Syntaks | dato tid |
Bruk | ERKLÆR @MyDatetimedato tid OPPRETT TABELL Tabell1 (Kolonne1dato tid) |
Format | ‘ÅÅÅÅ-MM-DD tt: mm: ss.nnn |
Tidsramme | 00:00:00 til 23: 59: 59.997 |
Elementområder |
|
Lagringsstørrelse generere en tilfeldig streng java | 8 byte |
Standardverdi | 1900-01-01 00:00:00 |
Kalender | Gregoriansk (inkluderer hele året.) |
Merk: Detaljene ovenfor gjelder for datetime-typen i Transact-SQL ogSQL Server.
Så det er dato tid i SQL. Men hva ville du gjort hvis du har en annen dato &tidstyper, og du må konvertere dem til dato tid type?
Konvertering av andre dato- og tidstyper til datatypen datetime
De dato tid datatype i SQL inkluderer dato og klokkeslett, med en 3-sifret del av sekunder. Nøyaktigheten avrundes til trinn på .000, .003 eller .007 sekunder. Så når du konverterer en Dato eller tid verdier til dato tid , legges ekstra informasjon til verdien. Dette er fordi dato tid datatypen inneholder både dato og klokkeslett. Denne delen av artikkelen forklarer hva som skjer når andre dato og tid datatyper blir konvertert til dato tid data-type.
Eksempel1: Implisitt konvertering mellom dato og datotid
ERKLÆR @dato dato = '2020-12-01' ERKLÆR @datetid datetime = @ dato
Resultat
@datetime @dato ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Eksempel2: Implisitt konvertering mellom dato og datatid ved bruk av CAST ()
ERKLÆR @thedate date = '2020-12-01' VELG @thedate AS 'dato', CAST (@thedate AS datetime) AS 'datetime'
Resultat
@datetime @dato ------------------------- ---------- 2016-12-21 00: 00: 00.000 2016 -12-21
Eksempel 3: Implisitt konvertering fra smalldatetime til datetime
Når konverteringen er fra s malldatetime type, blir timer og minutter kopiert. Sekundene og brøkdelene er satt til verdi 0. Følgende kode viser resultatene av konvertering av a smalldatetime verdi til en dato tid verdi.
ERKLÆR @smalldatetime smalldatetime = '2020-12-01 12:32' ERKLÆR @datetime datetime = @smalldatetime VELG @datetime AS '@datetime', @smalldatetime AS '@smalldatetime'
Resultat
@datetime @smalldatetime ------------------------- --------------------- - 2016-12-01 12: 32: 00.000 2016-12-01 12:32:00
På samme måte kan du konvertere andre dato tid typer til datatime skriv enten implisitt eller bruk rollebesetning () og konvertere() metoder. For referanse, sjekk ut tabellen nedenfor for å gjøre deg kjent med formatene til alle dato- og tidstyper.
Data-type | Eksempel |
tid | 12:35:29. 1234567 |
Dato | 2007-05-08 |
smalldatetime | 2007-05-08 12:35:00 |
dato tid | 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 |
Med dette har vi kommet til slutten av denne artikkelen. Jeg håper du er klar over innholdet som er diskutert her. Forsikre deg om at du trener så mye som mulig og tilbakestiller opplevelsen.
Hvis du ønsker å lære mer om MySQL og bli kjent med denne åpen kildekode-relasjonsdatabasen, så sjekk ut vår som kommer med instruktørstyrt liveopplæring og reell prosjektopplevelse. Denne opplæringen vil hjelpe deg med å forstå MySQL grundig og hjelpe deg med å mestre emnet.
Har du spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne ‘Prosedyrer i SQL-artikkelen, så kommer vi tilbake til deg.