MySQL 中的DATE_FORMAT

在項目中需要一個需求:對數據按月份進行分組統計。查詢相關資料後發現一個函數:

DATEPARAM()函數

DATEPARAM() 函數的作用:用來返回代表指定日期的指定部分的整數

語法:

DATEPARAM(指定參數,日期) 例如:DATEPARAM(dd,2018-8-8)

第一個參數來說就是傳入需要獲取日期的部分如:yy、mm、dd 第二個參數就是具體的日期

日期 縮寫
年(year) yy或yyyy
季度(quarter) qq或q
月(month) mm或m
年的第幾天(dayofyear) dy或y
天(day) dd或d
周(week) wk或ww
一週的第幾天(weekday) dw
小時(Hour) hh
分鐘(minute) mi或n
秒(second) ss或s
毫秒(millisecond) ms

但是 MYSQL 並不支持改函數,函數是sql server 的函數。Mysql 的解決辦法: DATE_FORMAT()函數 ,用來從指定日期中返回指定的日期格式

其參數與 DATEPARAM 相反,第一個參數:指定的日期,第二個參數:需要獲取的格式

格式符 說明
%a

工作日的縮寫名稱  (Sun..Sat)

%b

月份的縮寫名稱  (Jan..Dec)

%c

月份,數字形式(0..12)

%D

帶有英語後綴的該月日期  (0th, 1st, 2nd, 3rd, ...)

%d

該月日期, 數字形式 (00..31)

%e

該月日期, 數字形式(0..31)

%f

微秒 (000000..999999)

%H

小時(00..23)

%h

小時(01..12)

%I

小時 (01..12)

%i

分鐘,數字形式 (00..59)

%j

一年中的第幾天 (001..366)

%k

小時 (0..23)

%l(小寫L)

小時 (1..12)

%M

月份名稱 (January..December)

%m

月份, 數字形式 (00..12)

%p

上午(AM)或下午( PM)

%r

獲得時間 ,例如 (10: 11: 43 AM)

%S

秒 (00..59)

%s

秒 (00..59)

%T

時間 , 例如 (10:11:43   不加AM或PM)

%U 周 (00..53), 其中週日爲每週的第一天
%u 周 (00..53), 其中週一爲每週的第一天 
%V

周 (01..53), 其中週日爲每週的第一天 ; 和 %X同時使用

%v

周 (01..53), 其中週一爲每週的第一天 ; 和 %x同時使用

%W

工作日名稱 (週日..週六)

%w

一週中的每日 (0=週日..6=週六)

%X

該周的年份,其中週日爲每週的第一天, 數字形式,4位數;和%V同時使用

%x

該周的年份,其中週一爲每週的第一天, 數字形式,4位數;和%v同時使用

%Y

年份, 數字形式,4位數

%y

年份, 數字形式 (2位數)

%%

‘%’文字字符

此外,DATE_FORMAT() 函數還可以將指定的格式組合起來寫

比如:

SELECT DATE_FORMAT('2019-03-09 10:18:37','%Y-%m-%d')
返回:2019-03-09
SELECT DATE_FORMAT('2019-03-09 10:18:37','%Y年%m月%d日')
返回:2019年03月09日

https://blog.csdn.net/weixin_30652879/article/details/97258860

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章