Има някои наистина полезни MySQL функции за дата, които ви помагат директно да получите необходимата част от дата. Ето често използваните MySQL функции за дата. Тези MySQL функции за дата са много лесни за запомняне.
Синтаксис на функциите за дата на MySQL:
име_на_функция(дата)
име_на_функция – може да бъде всяка от посочените по-долу като година, месец и т.н.
дата – низ от дата във формат „ГГГГ-ММ-ДД ЧЧ:ММ:СС“. Може да бъде колона за дата или час от таблица, низ или системна функция като NOW()
За директно изчисляване на Година от дата или дата и час, можете да използвате функцията MySQL Year:
#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;
Резултат:
2013 2013 2010
Функцията NOW() ви показва текущата дата и час. Показах най-новата дата и час тук за справка .
SELECT NOW(); '2013-12-05 10:37:46'
За директно изчисляване на Месец от дата или дата и час, можете да използвате функцията MySQL Month:
SELECT MONTH(NOW()); 12
За директно изчисляване на Дата от datetime, можете да използвате функцията за дата на MySQL:
SELECT DATE(NOW()); 2013-12-05
За директно изчисляване на Ден от дата или дата и час, можете да използвате функцията MySQL Day:
SELECT DAY(NOW()); 5
За директно изчисляване на Номер на седмица от дата или дата и час, можете да използвате функцията MySQL Week:
SELECT WEEK(NOW()); 48
За директно изчисляване на Година и седмица от дата или дата и час, можете да използвате функцията MySQL YearWeek:
SELECT YEARWEEK(NOW()); 12
За директно изчисляване на Часове от време или дата и час, можете да използвате функцията за час на MySQL:
SELECT HOUR(NOW()); 10
За полето за дата часът се връща като ’00:00:00′. Така че ще видите резултата като 0.
#using a date column CREATE TABLE TEST(DT DATE); INSERT INTO TEST(DT) VALUES('2010-10-05'); SELECT HOUR(DT) from TEST; 0
За директно изчисляване на минути от време или дата и час, можете да използвате функцията MySQL Minute:
SELECT MINUTE(NOW()); 37
За полето за дата часът се връща като ’00:00:00′. Така че ще видите резултата като 0.
За директно изчисляване на Секунди от време или дата и час, можете да използвате MySQL Втора функция:
SELECT SECOND(NOW()); 46
За полето за дата часът се връща като ’00:00:00′. Така че ще видите резултата като 0.