logo

Hvordan spesifisere et datoformat ved å lage en tabell og fylle den i SQL?

Når vi jobber med databaser, finner vi at nesten hver enkelt tabell inneholder en Dato-kolonne. Tross alt spiller datoen for dataene en viktig rolle mens de analyseres. Å lagre datoer i et spesifikt eller forståelig format er svært viktig. I denne artikkelen skal vi lære hvordan vi kan spesifisere et datoformat på SQL Server.

La oss lage vår demodatabase og tabell.



Trinn 1: Opprett en database

Bruk følgende kommando for å lage en database.

skrive ut uttalelse i java

Spørsmål:



CREATE DATABASE User_details;>

Steg 2: Bruk database

Spørsmål:

USE User_details;>

Trinn 3: Tabelldefinisjon



Vi har følgende GFG_user-tabell i databasen.

Spørsmål:

CREATE TABLE GFG_user(Id INT NOT NULL,Dt DATE, Address VARCHAR(100),Dt_FORMATTED AS (convert(varchar(255), dt, 104)), PRIMARY KEY (Id) );>

Produksjon:

Her har vi laget en kolonne kalt Dt_FORMATTED der vi skal lagre vår formaterte Dato.

Nå ser vi KONVERTERE() funksjon. CONVERT()-funksjonen konverterer ganske enkelt en verdi av en hvilken som helst type til en spesifisert datatype.

Syntaks:

CONVERT ( data_type ( length ) , expression , style )>

Ved å bruke denne funksjonen kaster vi strengen til en dato. I stedet for stilargument har vi nevnt '104' . Det er en numerisk kode for å spesifisere datoformatet.

Sjekk denne tabellen for å se forskjellige koder som brukes for forskjellige formater:

Med århundre

(åå)

Med århundre

(åååå)

Standard

Inngang/utgang

0 eller 100 (1.2)

Standard for dato og klokkeslett

og smalldatetime

man dd ååå tt:

miAM (eller PM)

1 101 OSS.

1 = mm/dd/åå

ubuntu bygge nødvendigheter

101 = mm/dd/åååå

2 102 ANSI

2 = åå.mm.dd

102 = åååå.mm.dd

3 103 britisk/fransk

3 = dd/mm/åå

103 = dd/mm/åååå

4 104 tysk

4 = dd.mm.åå

104 = dd.mm.åååå

elleve 111 JAPAN

11 = åå/mm/dd

111 = åååå/mm/dd

12 112 ISO

12 = åmmdd

112 = ååååmmdd

13 eller 113 (1.2) Europa standard + millisekunder dd man åååå tt:mi:ss:mmm (24t)
131 (2) Hijri (5) dd/mm/åååå tt:mi:ss:mmmAM

Her har vi bare nevnt de 10 mest brukte formatene.

Trinn 4: Sett inn verdier

Følgende kommando brukes til å sette inn verdier i tabellen.

Spørsmål:

SET DATEFORMAT dmy; INSERT INTO GFG_user (Id, Dt, Address) VALUES ('1','23.11.2021', 'German');>

I denne spørringen bruker vi de DATOFORMAT innstilling.

Syntaks:

SET DATEFORMAT format>

Når vi setter inn strengen, vil serveren prøve å konvertere strengen til dato før den settes inn i tabellen. Siden den ikke kan fortelle om vi setter måneden før datoen eller datoen før måneden. Anta for eksempel at du prøver å sette inn 06.07.2000. Serveren kan ikke oppdage om datoen er 6. juli eller 7. juni. Selv om den bruker lokaliseringsinnstillingene til brukerkontoen som opererer for å finne ut at det å ikke nevne DATEFORMAT kan gi deg en feil, da de fleste gangene kontoen som kjører operasjonen er satt til USA-format, det vil si – Måned Dag År (mdy) .

trekart

Feilen ble forårsaket fordi vi ønsket å lagre den som dmy , ikke mdy . Bruk av DATEFORMAT vil imidlertid hjelpe deg å bli kvitt det.

Produksjon:

Vi er ferdige med bordet vårt, la oss nå sjekke om vi får ønsket utgang eller ikke.

Trinn 5: Se data fra tabellen

Spørsmål:

SELECT * FROM GFG_user;>

Produksjon:

Vi har fått vårt tyske format Dato i Dt_FORMATTED-kolonnen.

En annen tilnærming til å sette inn dato i databasen:

Vi kan også sette inn dato ved å bruke 'to_date'-funksjonen i sql. Følgende syntaks kan brukes:

TO_DATE([value], [format]);>

Datoformat kan være av forskjellige typer, for eksempel: «dd-mm-åååå» , «åååå-mm-dd» , «mm-dd-åååå» .

.tostring java

Eksempel:

CREATE TABLE GFG_INTERN (e_name VARCHAR(20), e_id number, joiningDate date); INSERT INTO GFG_INTERN VALUES ('FirstIntern', 001, to_date('2022-12-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('SecondIntern', 002, to_date('2022-Dec-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('ThirdIntern', 003, to_date('30-12-2022','dd-mm-yyyy')); INSERT INTO GFG_INTERN VALUES ('FourthIntern', 004, to_date('12-31-2022','mm-dd-yyyy')); SELECT * FROM GFG_INTERN;>

sql kommandoer

Produksjon:

Produksjon