MySQL是一個(gè)使用廣泛的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在MySQL中,日期是很重要的一種數(shù)據(jù)類型。因此,格式化日期是MySQL中經(jīng)常使用的操作之一。下面介紹如何使用MySQL實(shí)現(xiàn)日期格式化。
首先,我們需要了解MySQL中日期和時(shí)間數(shù)據(jù)類型。MySQL支持多種日期和時(shí)間數(shù)據(jù)類型,比如DATE、TIME、DATETIME和TIMESTAMP等。其中,DATE類型表示日期,時(shí)間為'YYYY-MM-DD'格式;TIME類型表示時(shí)間,格式為'HH:MM:SS';DATETIME類型表示日期和時(shí)間,格式為'YYYY-MM-DD HH:MM:SS';TIMESTAMP類型可以保存包含日期和時(shí)間的信息,其格式也是'YYYY-MM-DD HH:MM:SS'。下面是幾個(gè)例子。
DATE類型:'2021-06-10' TIME類型:'10:15:30' DATETIME類型:'2021-06-10 10:15:30' TIMESTAMP類型:'2021-06-10 10:15:30'
MySQL提供了一系列函數(shù)來實(shí)現(xiàn)日期格式化。下面介紹幾個(gè)常用的日期格式化函數(shù)。
1. DATE_FORMAT函數(shù)
DATE_FORMAT函數(shù)可以將日期和時(shí)間格式化為指定的字符串。它的語法如下:
DATE_FORMAT(date, format)
其中,date是需要格式化的日期或時(shí)間,format是指定的格式化字符串。下面是一些常用的格式化字符串。
%Y:4位數(shù)字表示的年份 %m:2位數(shù)字表示的月份 %d:2位數(shù)字表示的日份 %H:24小時(shí)制的小時(shí)數(shù) %h:12小時(shí)制的小時(shí)數(shù) %i:2位數(shù)字表示的分鐘數(shù) %s:2位數(shù)字表示的秒數(shù) %w:星期幾,0(表示星期日)到6(表示星期六)
下面是幾個(gè)例子。
SELECT DATE_FORMAT('2021-06-10', '%Y%m%d'); -- 輸出:20210610 SELECT DATE_FORMAT('2021-06-10 10:15:30', '%Y-%m-%d %H:%i:%s'); -- 輸出:2021-06-10 10:15:30
2. STR_TO_DATE函數(shù)
STR_TO_DATE函數(shù)可以將指定的字符串格式化為日期或時(shí)間類型。它的語法如下:
STR_TO_DATE(str, format)
其中,str是需要格式化的字符串,format是指定的格式化字符串。下面是一些常用的格式化字符串。
%Y:4位數(shù)字表示的年份 %m:2位數(shù)字表示的月份 %d:2位數(shù)字表示的日份 %H:24小時(shí)制的小時(shí)數(shù) %h:12小時(shí)制的小時(shí)數(shù) %i:2位數(shù)字表示的分鐘數(shù) %s:2位數(shù)字表示的秒數(shù)
下面是幾個(gè)例子。
SELECT STR_TO_DATE('2021-06-10 10:15:30', '%Y-%m-%d %H:%i:%s'); -- 輸出:2021-06-10 10:15:30 SELECT STR_TO_DATE('20210610', '%Y%m%d'); -- 輸出:2021-06-10
3. UNIX_TIMESTAMP函數(shù)
UNIX_TIMESTAMP函數(shù)可以返回指定日期或時(shí)間的UNIX時(shí)間戳。UNIX時(shí)間戳是從1970年1月1日00:00:00 UTC到指定日期或時(shí)間之間的秒數(shù)。它的語法如下:
UNIX_TIMESTAMP(date)
其中,date是需要轉(zhuǎn)換為UNIX時(shí)間戳的日期或時(shí)間。下面是幾個(gè)例子。
SELECT UNIX_TIMESTAMP('2021-06-10 10:15:30'); -- 輸出:1623327330
以上就是MySQL實(shí)現(xiàn)日期格式化的介紹。希望對(duì)大家有所幫助。