Mysql Date_format Function

MySQL: DATE_FORMAT Function

This tutorial explains how to use the MySQL DATE_FORMAT function with syntax and examples.

Description

The MySQL DATE_FORMAT function formats a date as specified by a format mask.

Syntax

The syntax for the DATE_FORMAT function in MySQL is:

DATE_FORMAT( date, format_mask )

Parameters or Arguments

date

The date to format.

format_mask

The format to apply to date. The following is a list of options for the format_mask parameter. These parameters can be used in many combinations.

Value Description
%a Weekday name abbreviated (Sun to Sat)
%b Month name abbreviated (Jan to Dec)
%c Month as a numeric value (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) %f is available starting in MySQL 4.1.1
%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 (00 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) Available starting in MySQL 3.23.8 and used with %X
%v Week where Monday is the first day of the week (01 to 53) Available starting in MySQL 3.23.8 and 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 Available starting in MySQL 3.23.8 and used with %V
%x Year for the week where Monday is the first day of the week Available starting in MySQL 3.23.8 and used with %v
%Y Year as a numeric, 4-digit value
%y Year as a numeric, 2-digit value

Note

  • Day and month ranges start at 00 as MySQL allows dates to be stored incomplete. For example: '2013-00-00'.
  • See also the TIME_FORMAT function.

Applies To

The DATE_FORMAT function can be used in the following versions of MySQL:

  • MySQL 5.7, MySQL 5.6, MySQL 5.5, MySQL 5.1, MySQL 5.0, MySQL 4.1, MySQL 4.0, MySQL 3.23

Example

Let's look at some MySQL DATE_FORMAT function examples and explore how to use the DATE_FORMAT function in MySQL.

For example:

mysql> SELECT DATE_FORMAT('2014-02-28', '%Y');
Output: '2014'

mysql> SELECT DATE_FORMAT('2014-02-01', '%M %d, %Y');
Output: 'February 01, 2014'

mysql> SELECT DATE_FORMAT('2014-02-01', '%M %e %Y');
Output: 'February 1 2014'

mysql> SELECT DATE_FORMAT('2014-02-28', '%W, %M %e, %Y');
Output: 'Friday, February 28, 2014'

mysql> SELECT DATE_FORMAT('2014-02-28', '%W');
Output: 'Friday'