The DATE_FORMAT function in SQL is used to format a date value as per the specified format. This function takes two parameters - the date value and the format string. The format string specifies how the date value should be formatted and can include different format specifiers such as %Y for year
%m for month
%d for day
%H for hour
%i for minute
%s for second
etc.
For example
if we have a date value '2022-10-15' and we want to format it as '15-10-2022'
we can use the DATE_FORMAT function as follows:
SELECT DATE_FORMAT('2022-10-15'
'%d-%m-%Y');
This will return '15-10-2022' as the formatted date value.
The DATE_FORMAT function is particularly useful when we need to display date values in a specific format in our SQL query results. It allows us to customize the presentation of date values according to our requirements.
Another example of using the DATE_FORMAT function is when we want to extract only the year from a date value. We can do this by specifying the '%Y' format specifier in the format string.
SELECT DATE_FORMAT('2022-10-15'
'%Y');
This will return '2022' as the year extracted from the date value.
In addition to the predefined format specifiers
we can also combine them in any order and with any other characters to create a custom date format. For example
if we want to display the date value '2022-10-15' as '15th October
2022'
we can use the following format string:
SELECT DATE_FORMAT('2022-10-15'
'%D %M
%Y');
This will return '15th October
2022' as the formatted date value.
It is important to note that the DATE_FORMAT function is supported in most SQL databases such as MySQL
PostgreSQL
Oracle
SQL Server
etc. However
the syntax and available format specifiers may vary slightly between different database management systems.
In conclusion
the DATE_FORMAT function in SQL is a powerful tool for formatting date values according to specific requirements. It allows developers to customize the presentation of date values in SQL queries and reports
making it easier to interpret and display date information in a meaningful way.