欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL 日期時(shí)間格式化函數(shù) DATE_FORMAT() 的使用示例詳解

 更新時(shí)間:2025年03月03日 11:57:41   作者:Jelian_  
`DATE_FORMAT()`是MySQL中用于格式化日期時(shí)間的函數(shù),本文詳細(xì)介紹了其語(yǔ)法、格式化字符串的含義以及常見(jiàn)日期時(shí)間格式組合,感興趣的朋友一起看看吧

一、DATE_FORMAT()語(yǔ)法

DATE_FORMAT() 是MySQL中用于格式化日期時(shí)間的函數(shù):

語(yǔ)法DATE_FORMAT(date, format_string)

  • date:需要格式化的日期化時(shí)間值,一般是需要被格式化的日期時(shí)間類(lèi)型(datetime類(lèi)),但也可以是日期時(shí)間形式的字符串
  • format_string:格式化字符串,用于指定日期時(shí)間的格式化輸出形式

注1:MySQL允許你對(duì)具體的日期時(shí)間格式的字符串進(jìn)行格式化,但其他數(shù)據(jù)庫(kù)的格式化函數(shù)不一定支持,比如Clickhouse的formatDateTime()
注2:MySQL對(duì)字符串進(jìn)行格式化時(shí),日期時(shí)間的格式并不固定,你可以用很多特殊字符隔開(kāi)日期時(shí)間,比如: / * - <等,但不能是空格,MySQL會(huì)按照YY MM DD HH MM SS的順序識(shí)別字符串中的數(shù)字

-- 比如下列SQl語(yǔ)句的執(zhí)行結(jié)果相同,都是 "2024,December,31st"
SELECT DATE_FORMAT( '24-12-31', '%Y,%M,%D') AS format_date
SELECT DATE_FORMAT( '2024-12-31', '%Y,%M,%D') AS format_date
SELECT DATE_FORMAT( '2024/12/31', '%Y,%M,%D') AS format_date
SELECT DATE_FORMAT( '2024*12*31', '%Y,%M,%D') AS format_date
SELECT DATE_FORMAT( '24<<12<<31', '%Y,%M,%D') AS format_date
-- 但如果使用空格間隔,會(huì)執(zhí)行失敗,但不會(huì)報(bào)錯(cuò),輸出結(jié)果為NULL
SELECT DATE_FORMAT( '24 12 31', '%Y,%M,%D') AS format_date

二、格式化字符串詳解

格式含義
%Y年份:4位數(shù)字表示,eg: 2024
%y年份:2位數(shù)字表示,eg: 24
%M月份:英文全拼表示,eg: June
%m月份:2位數(shù)字表示,范圍01-12,eg: 06
%D天數(shù):兩位數(shù)字表示,范圍01-31,eg: 15
%d天數(shù):英文第幾天表示,范圍 1st-31th,eg: 1st, 2nd, 3rd, 15th
%H小時(shí):兩位數(shù)字表示,范圍00-23,eg: 23
%i分鐘:兩位數(shù)字表示,范圍00-59,eg: 59
%S OR %s秒鐘:兩位數(shù)字表示,范圍00-59,eg: 16
%W星期:英文全拼表示,eg: Saturday
%w星期:1位數(shù)字表示,eg: 6
%T完全時(shí)間格式,相當(dāng)于 %H:%i%s 或 %H:%i:%S,范圍00:00:00-23:59:59,eg: 15:30:36

注3:大小寫(xiě)形式%I 和%t無(wú)意義

三、常見(jiàn)日期時(shí)間格式組合

常見(jiàn)的日期時(shí)間格式化形式基本上就是如下幾種:
%Y,%M,%D
%Y-%m-%d %H:%i:%s
%Y/%m/%d
%W,%M,%D

SQL語(yǔ)句

SELECT '%Y-%m-%d %H:%i:%s' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%Y-%m-%d %H:%i:%s') AS format_date UNION ALL
SELECT '%Y,%M,%D' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%Y,%M,%D') AS format_date UNION ALL
SELECT '%W,%M,%D' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%W,%M,%D') AS format_date UNION ALL
SELECT '%y/%m/%d' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%y/%m/%d') AS format_date UNION ALL
SELECT '%H:%i:%s' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%H:%i:%s') AS format_date UNION ALL
SELECT '%H:%i:%S' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%H:%i:%S') AS format_date UNION ALL
SELECT '%T' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%T') AS format_date UNION ALL
SELECT '%w,%m-%d' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%w,%m-%d') AS format_date UNION ALL
SELECT '------' AS format, '--------------' AS format_date UNION ALL
SELECT '%H:%I:%s' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%H:%I:%s') AS format_date UNION ALL
SELECT '%t' AS format, DATE_FORMAT( '2024-12-31 23:48:59','%t') AS format_date

執(zhí)行結(jié)果

四、業(yè)務(wù)場(chǎng)景

在實(shí)際的業(yè)務(wù)應(yīng)用如報(bào)表導(dǎo)出、界面顯示、數(shù)據(jù)分析等,該函數(shù)通常用于輸出特定格式的日期或時(shí)間,當(dāng)然,DATE_FORMAT()允許你自定義輸出格式,只要你定義好格式化字符串即可。

SELECT DATE_FORMAT(startTime,'%Y-%m') AS startTime 
FROM tableA
WHERE column1 = 'option1'

五、總結(jié)

DATE_FORMAT()是MySQL中用于格式化輸出日期時(shí)間的函數(shù),我們可以通過(guò)使用該函數(shù)滿(mǎn)足大多數(shù)格式化日期時(shí)間的應(yīng)用場(chǎng)景,本文的示例展示了如何獲取當(dāng)前日期和時(shí)間并將其格式化為一個(gè)常見(jiàn)的格式,您可以根據(jù)需要調(diào)整格式字符串來(lái)滿(mǎn)足您的具體需求。
但需要注意的是,不同的數(shù)據(jù)庫(kù)系統(tǒng)可能支持不同的格式字符串,所以在使用時(shí)需要參考相應(yīng)數(shù)據(jù)庫(kù)的文檔來(lái)確定正確的格式字符串。

到此這篇關(guān)于MySQL 日期時(shí)間格式化函數(shù) DATE_FORMAT() 的使用詳解的文章就介紹到這了,更多相關(guān)mysql 日期時(shí)間格式化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論