I SQL , datoer er komplicerede for nybegyndere, da når man arbejder med en database, skal formatet af dataene i tabellen matches med de inputdata, der skal indsættes. I forskellige scenarier i stedet for dato, bruges datetime (tid er også involveret i dato).
Til lagring af en dato eller en dato- og tidsværdi i en database, MySQL tilbyder følgende datatyper:
| DATO | format ÅÅÅÅ-MM-DD |
| DATO TID | format: ÅÅÅÅ-MM-DD TT:MI: SS |
| TIDSSTEMPEL | format: ÅÅÅÅ-MM-DD TT:MI: SS |
| ÅR | format YYYY eller YY |
Kom nu til nogle populære funktioner i SQL-datofunktioner.
NU()
Returnerer den aktuelle dato og klokkeslæt.
Forespørgsel:
SELECT NOW();>
Produktion:

CURDATE()
Returnerer den aktuelle dato.
Forespørgsel:
q1 q2 q3 q4
SELECT CURDATE();>
Produktion:

CURTIME()
Returnerer det aktuelle tidspunkt.
kmp algoritme
Forespørgsel:
SELECT CURTIME();>
Produktion:

DATO()
Udtrækker datodelen af et dato- eller dato/tidsudtryk. Eksempel: For nedenstående tabel kaldet 'Test'
| Id | Navn | Fødselstid |
|---|---|---|
| 4120 | Øve sig | 1996-09-26 16:44:15,581 |
Forespørgsel:
SELECT Name, DATE(BirthTime) AS BirthDate FROM Test;>
Produktion:
| Navn | Fødselsdato |
|---|---|
| Øve sig | 1996-09-26 |
UDDRAG()
Returnerer en enkelt del af en dato/tid.
Syntaks
UDDRAG(enhed FRA dato);
Flere enheder kan komme i betragtning men kun nogle bruges som f.eks MICROSECOND, SECOND, MINUTE, TIME, DAG, UGE, MÅNED, KVARTAL, ÅR osv. Og 'dato' er et gyldigt datoudtryk. Eksempel: For nedenstående tabel kaldet 'Test'
| Id | Navn | Fødselstid |
|---|---|---|
| 4120 | Øve sig | 1996-09-26 16:44:15,581 |
Forespørgsel:
SELECT Name, Extract(DAY FROM BirthTime) AS BirthDay FROM Test;>
Produktion:
| Navn | Fødselsdag |
|---|---|
| Øve sig | 26 |
Forespørgsel:
SELECT Name, Extract(YEAR FROM BirthTime) AS BirthYear FROM Test;>
Produktion:
matematik.tilfældig java
| Navn | Fødselsår |
|---|---|
| Øve sig | nitten seksoghalvfems |
Forespørgsel:
SELECT Name, Extract(SECOND FROM BirthTime) AS BirthSecond FROM Test;>
Produktion:
| Navn | BirthSecond |
|---|---|
| Øve sig | 581 |
DATE_ADD()
Tilføjer et angivet tidsinterval til en dato.
Syntaks:
DATE_ADD(dato, INTERVAL udtr type);
Hvor, dato – gyldigt datoudtryk og udtr er antallet af intervaller, vi vil tilføje. og type kan være en af følgende: MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QUARTER, YEAR osv. Eksempel: For nedenstående tabel kaldet 'Test'
java 8 funktioner
| Id | Navn | Fødselstid |
|---|---|---|
| 4120 | Øve sig | 1996-09-26 16:44:15,581 |
Forespørgsel:
SELECT Name, DATE_ADD(BirthTime, INTERVAL 1 YEAR) AS BirthTimeModified FROM Test;>
Produktion:
| Navn | Fødselstidspunkt Ændret |
|---|---|
| Øve sig | 1997-09-26 16:44:15,581 |
Forespørgsel:
SELECT Name, DATE_ADD(BirthTime, INTERVAL 30 DAY) AS BirthDayModified FROM Test;>
Produktion:
| Navn | Fødselsdag Modificeret |
|---|---|
| Øve sig | 1996-10-26 16:44:15,581 |
Forespørgsel:
SELECT Name, DATE_ADD(BirthTime, INTERVAL 4 HOUR) AS BirthHourModified FROM Test;>
Produktion:
| Navn | BirthSecond |
|---|---|
| Øve sig | 1996-10-26 20:44:15,581 |
DATE_SUB()
Trækker et angivet tidsinterval fra en dato. Syntaksen for DATE_SUB er den samme som DATE_ADD, bare forskellen er, at DATE_SUB bruges til at trække et givet datointerval fra.
python konvertere bytes til streng
DATODIFF()
Returnerer antallet af dage mellem to datoer.
Syntaks:
DATODIFF(dato1, dato2);
dato1 & dato2- dato/tid udtryk
Forespørgsel:
SELECT DATEDIFF('2017-01-13','2017-01-03') AS DateDiff;> Produktion:
| DatoDiff |
|---|
| 10 |
DATOFORMAT()
Viser dato/tidsdata i forskellige formater.
Syntaks:
DATO_FORMAT(dato;format);
datoen er en gyldig dato, og formatet angiver outputformatet for datoen/klokkeslættet. De formater der kan bruges er:
- %a-Forkortet ugedagsnavn (søn-lør)
- %b-Forkortet månedsnavn (jan-dec)
- %c-måned, numerisk (0-12)
- %D-dag i måneden med engelsk suffiks (0., 1., 2., 3.)
- %d-dag i måneden, numerisk (00-31)
- %e-dag i måneden, numerisk (0-31)
- %f-mikrosekunder (000000-999999)
- %H-time (00-23)
- %h-time (01-12)
- %I-time (01-12)
- %i-minutter, numerisk (00-59)
- %j-dag i året (001-366)
- %k-time (0-23)
- %l-time (1-12)
- %M-måneds navn (januar-december)
- %m-måned, numerisk (00-12)
- %p-AM eller PM
- %r-tid, 12 timer (tt:mm: ss efterfulgt af AM eller PM)
- %S-sekunder (00-59)
- %s-sekunder (00-59)
- %T-tid, 24 timer (tt:mm: ss)
- %U-Uge (00-53), hvor søndag er den første dag i ugen
- %u-Uge (00-53), hvor mandag er den første dag i ugen
- %V-Uge (01-53), hvor søndag er den første dag i ugen, brugt med %X
- %v-Uge (01-53), hvor mandag er den første dag i ugen, brugt med %x
- %W-Ugedagsnavn (søndag-lørdag)
- %w-ugedag (0=søndag, 6=lørdag)
- %X-år for ugen, hvor søndag er den første dag i ugen, fire cifre, brugt med %V
- %x-år for ugen, hvor mandag er den første dag i ugen, fire cifre, brugt med %v
- %Y-Year, numerisk, fire cifre
- %y-Year, numerisk, to cifre