SQL Datetime: Alt du trenger å vite



Denne artikkelen om sql datetime vil hjelpe deg å forstå hvordan du skriver datetime og hvordan du konverterer fra andre dato- og tidstyper til datetime

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?

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

  • ÅÅÅÅ er fire sifre fra 1753 til 9999 som representerer et år.
  • MM er to sifre, fra 01 til 12, som representerer en måned i det angitte året.
  • DD er to sifre, som varierer fra 01 til 31, avhengig av måneden, som representerer en dag i den angitte måneden.
  • hh er to sifre, som strekker seg fra 00 til 23, som representerer timen.
  • mm er to sifre, fra 00 til 59, som representerer minutt.
  • ss er to sifre, som strekker seg fra 00 til 59, som representerer den andre.
  • n * er null til tre sifre, som varierer fra 0 til 999, som representerer brøk sekunder.

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.