sql >> Database teknologi >  >> RDS >> Mysql

9 virkelig nyttige MySQL-datofunktioner, der er nemme at huske

Der er nogle virkelig nyttige MySQL-datofunktioner, der hjælper dig med at få den nødvendige del af en date direkte. Her er de almindeligt anvendte MySQL-datofunktioner. Disse MySQL-datofunktioner er meget nemme at huske.

MySQL datofunktions syntaks:

funktionsnavn(dato)

funktionsnavn – det kan være en af ​​nedenstående som år, måned osv.

dato – datostreng i formatet 'ÅÅÅÅ-MM-DD TT:MM:SS'. Det kan være en dato- eller datetime-kolonne fra en tabel, streng eller systemfunktion som NOW()

For direkte at beregne År fra dato eller datotid, kan du bruge MySQL Year-funktionen:

#using system function now()
SELECT YEAR(NOW());

#using a string
SELECT YEAR('2011-11-05 11:45:00');

#using a date column
CREATE TABLE TEST(DT DATETIME);
INSERT INTO TEST(DT) VALUES('2010-10-05 10:45:00');
SELECT YEAR(DT) from TEST;

Resultat:

2013
2013
2010

Funktionen NU() viser dig den aktuelle dato og klokkeslæt. Jeg har vist den seneste dato og tid her til reference .

SELECT NOW();
'2013-12-05 10:37:46'

For direkte at beregne Måned fra dato eller datotid, kan du bruge MySQL-månedsfunktionen:

SELECT MONTH(NOW());
12

For direkte at beregne dato fra datetime kan du bruge MySQL Date-funktionen:

SELECT DATE(NOW()); 
2013-12-05

For direkte at beregne Dag fra dato eller datotid, kan du bruge MySQL Day-funktionen:

SELECT DAY(NOW()); 
5

For direkte at beregne Ugenummer fra dato eller datotid, kan du bruge MySQL Week-funktionen:

SELECT WEEK(NOW()); 
48

For direkte at beregne År og uge fra dato eller datotid, kan du bruge MySQL YearWeek-funktionen:

SELECT YEARWEEK(NOW()); 
12

For direkte at beregne timer fra tid eller dato, kan du bruge MySQL Hour-funktionen:

SELECT HOUR(NOW()); 
10

For datofelt returneres tiden som ’00:00:00′. Så du vil se resultatet som 0.

#using a date column
CREATE TABLE TEST(DT DATE);
INSERT INTO TEST(DT) VALUES('2010-10-05');
SELECT HOUR(DT) from TEST;
0

For direkte at beregne minutter fra tid eller dato, kan du bruge MySQL Minute-funktionen:

SELECT MINUTE(NOW()); 
37

For datofelt returneres tiden som ’00:00:00′. Så du vil se resultatet som 0.
For direkte at beregne sekunder fra tid eller dato, kan du bruge MySQL Second funktion:

SELECT SECOND(NOW());
46

For datofelt returneres tiden som ’00:00:00′. Så du vil se resultatet som 0.

  1. Hvordan opretter man en fremmednøgle med ON UPDATE CASCADE på Oracle?

  2. Skylning af enkelt markør

  3. Lange strenge i N-Hibernate med Oracle forårsager fejl

  4. SQL Server - find n'te forekomst i en streng