Ikreiz, kad strādājam ar datu bāzēm, mēs atklājam, ka gandrīz katrā tabulā ir datums kolonna. Galu galā datu datumam ir svarīga loma to analīzē. Ir ļoti svarīgi saglabāt datumus noteiktā vai saprotamā formātā. Šajā rakstā mēs uzzināsim, kā mēs varam norādīt datuma formātu SQL serverī.
Izveidosim savu demonstrācijas datu bāzi un tabulu.
1. darbība: Izveidojiet datu bāzi
Izmantojiet šo komandu, lai izveidotu datu bāzi.
Vaicājums:
tukšs 0
CREATE DATABASE User_details;>
2. darbība: Izmantojiet datu bāzi
Vaicājums:
USE User_details;>
3. darbība: Tabulas definīcija
Mums datu bāzē ir šāda GFG_user tabula.
Vaicājums:
CREATE TABLE GFG_user(Id INT NOT NULL,Dt DATE, Address VARCHAR(100),Dt_FORMATTED AS (convert(varchar(255), dt, 104)), PRIMARY KEY (Id) );>
Izvade:

Šeit mēs esam izveidojuši kolonnu ar nosaukumu Dt_FORMATTED, kurā mēs saglabāsim formatēto datumu.
Tagad mēs redzam KONVERTĒT() funkciju. Funkcija CONVERT() vienkārši pārvērš jebkura veida vērtību noteiktā datu tipā.
pavediens.iznīcināt
Sintakse:
CONVERT ( data_type ( length ) , expression , style )>
Izmantojot šo funkciju, mēs pārraidām virkni uz datumu. Stila argumenta vietā esam minējuši '104' . Tas ir ciparu kods, lai norādītu datuma formātu.
Pārbaudiet šo tabulu, lai redzētu dažādus kodus, kas tiek izmantoti dažādiem formātiem:
Ar gadsimtu(yy) | Ar gadsimtu(gggg) | Standarta | Ieejas izejas |
| – | 0 vai 100 (1.2) | Datuma un laika noklusējuma iestatījums un mazs datums laiks | pirmdien dd gggg hh: miAM (vai PM) |
| 1 | 101 | ASV | 1 = mm/dd/gg 101 = mm/dd/gggg |
| 2 | 102 | ANSI | 2 = gg.mm.dd 102 = gggg.mm.dd |
| 3 | 103 | britu/franču | 3 = dd/mm/gg 103 = dd/mm/gggg |
| 4 | 104 | vācu | 4 = dd.mm.gg 104 = dd.mm.gggg |
| vienpadsmit | 111 | JAPĀNA | 11 = gg/mm/dd 111 = gggg/mm/dd |
| 12 | 112 | ISO | 12 = ymmdd java virkne char 112 = ggggmmdd |
| – | 13 vai 113 (1.2) | Eiropā noklusējuma + milisekundes | dd mon gggg hh:mi:ss:mm (24h) |
| – | 131 (2) | Hijri (5) | dd/mm/gggg hh:mi:ss:mmmmAM |
Šeit mēs esam minējuši tikai 10 visbiežāk izmantotos formātus.
4. darbība: Ievietojiet vērtības
Tālāk norādītā komanda tiek izmantota, lai tabulā ievietotu vērtības.
kā palaist skriptu Linux
Vaicājums:
SET DATEFORMAT dmy; INSERT INTO GFG_user (Id, Dt, Address) VALUES ('1','23.11.2021', 'German');> 
Šajā vaicājumā mēs izmantojam uz DATUMA FORMĀTS iestatījumu.
Sintakse:
SET DATEFORMAT format>
Kad mēs ievietojam virkni, serveris mēģinās pārvērst virkni uz datumu pirms ievietošanas tabulā. Tā kā tas nevar noteikt, vai mēs ievietojam mēnesi pirms datuma vai datumu pirms mēneša. Piemēram, pieņemsim, ka mēģināt ievietot 06.07.2000. Serveris nevar noteikt, vai datums ir 6. jūlijs vai 7. jūnijs. Lai gan tas izmanto tā lietotāja konta lokalizācijas iestatījumus, kas darbojas, lai noskaidrotu, ka, nepieminot DATEFORMAT, var rasties kļūda, jo vairumā gadījumu konts, kurā tiek veikta darbība, ir iestatīts uz ASV formātu, tas ir - Mēnesis Diena Gads (md.) .
Kļūda radās, jo vēlējāmies to saglabāt kā dmy , nē mdy . Tomēr DATEFORMAT izmantošana palīdzēs no tā atbrīvoties.
Izvade:

Esam pabeiguši savu tabulu, tagad pārbaudīsim, vai mēs iegūstam vēlamo rezultātu.
5. darbība: Skatīt tabulas datus
Vaicājums:
SELECT * FROM GFG_user;>
Izvade:

Mēs esam veiksmīgi ieguvuši mūsu vācu formāta datumu kolonnā Dt_FORMATTED.
Vēl viena pieeja datuma ievietošanai datu bāzē:
Mēs varam arī ievietot datumu, izmantojot SQL funkciju “to_date”. Var izmantot šādu sintaksi:
TO_DATE([value], [format]);>
Datuma formāts var būt dažāda veida, piemēram: “dd-mm-gggg” , “gggg-mm-dd” , “mm-dd-gggg” .
Piemērs:
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 komandas
arp komanda
Izvade:

Izvade