xxxxxxxxxx
DATE_FORMAT(date, format)
-- E.g.
SELECT DATE_FORMAT(dateField, '%m/%d/%Y') FROM TableName;
-- See https://www.mysqltutorial.org/mysql-date_format/ for available formats
xxxxxxxxxx
#date_format--> used to format a given date
select DATE_FORMAT('2024-03-09', '%Y-%m');
^^^^ ^^ ^^
yyyy mm dd
#O/P: '2024-03'
select DATE_FORMAT("2024-03-09", "%d-%m-%Y");
#O/P: 09-03-2024
select DATE_FORMAT("2024-03-09", "%W");
#O/P: Saturday
select DATE_FORMAT("2024-03-09", "%D %M, %Y");
#O/P: 9th March, 2024
xxxxxxxxxx
DECLARE df VARCHAR(20);
DECLARE dt VARCHAR(20);
SET df = DATE_FORMAT(_Datefrom,'%Y-%m-%d 00:00:00');
SET dt = DATE_FORMAT(_DateTo,'%Y-%m-%d 23:59:59');
xxxxxxxxxx
-- Converts 'dd.mm.yyyy' to date (my_date_col is VARCHAR)
SELECT STR_TO_DATE(my_date_col,'%d.%m.%Y') AS my_strdate FROM my_table;
-- Converts 'dd.mm.yyyy' to 'YYYY-MM-DD'
SELECT DATE_FORMAT(STR_TO_DATE(my_date_col,'%d.%m.%Y'), '%Y-%m-%d') AS my_strdate
FROM my_table;
xxxxxxxxxx
Format Description
%a Abbreviated weekday name (Sun to Sat)
%b Abbreviated month name (Jan to Dec)
%c Numeric month name (0 to 12)
%D Day of the month as a numeric value, followed by suffix (1st, 2nd, 3rd, )
%d Day of the month as a numeric value (01 to 31)
%e Day of the month as a numeric value (0 to 31)
%f Microseconds (000000 to 999999)
%H Hour (00 to 23)
%h Hour (00 to 12)
%I Hour (00 to 12)
%i Minutes (00 to 59)
%j Day of the year (001 to 366)
%k Hour (0 to 23)
%l Hour (1 to 12)
%M Month name in full (January to December)
%m Month name as a numeric value (00 to 12)
%p AM or PM
%r Time in 12 hour AM or PM format (hh:mm:ss AM/PM)
%S Seconds (00 to 59)
%s Seconds (00 to 59)
%T Time in 24 hour format (hh:mm:ss)
%U Week where Sunday is the first day of the week (00 to 53)
%u Week where Monday is the first day of the week (00 to 53)
%V Week where Sunday is the first day of the week (01 to 53). Used with %X
%v Week where Monday is the first day of the week (01 to 53). Used with %x
%W Weekday name in full (Sunday to Saturday)
%w Day of the week where Sunday=0 and Saturday=6
%X Year for the week where Sunday is the first day of the week. Used with %V
%x Year for the week where Monday is the first day of the week. Used with %v
%Y Year as a numeric, 4-digit value
%y Year as a numeric, 2-digit value
xxxxxxxxxx
use \Datetime;
$now = new DateTime();
echo $now->format('Y-m-d H:i:s'); // MySQL datetime format
echo $now->getTimestamp(); // Unix Timestamp -- Since PHP 5.3
xxxxxxxxxx
DATE : stocke une date au format AAAA-MM-JJ (Année-Mois-Jour) ;
TIME : stocke un moment au format HH:MM:SS (Heures:Minutes:Secondes) ;
DATETIME : stocke la combinaison d'une date et d'un moment de la journée au format AAAA-MM-JJ HH:MM:SS. Ce type de champ est donc plus précis ;
TIMESTAMP : stocke le nombre de secondes passées depuis le 1er janvier 1970 à 00 h 00 min 00 s ;
YEAR : stocke une année, soit au format AA, soit au format AAAA.