萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySql format與date_format函數用法區別

MySql format與date_format函數用法區別

在mysql中格式化函數有幾個,像format,date_format,TIME_FORMAT這三個函數有很多朋友都不明白,下面我來給大家詳細舉例說明這三個函數用法

一,FORMAT(X,D)

格式化數字X為類似於格式'#,###,###.##',四捨五入到D為小數。如果D為0,結果將沒有小數點和小數部分。

舉例:
1.

 代碼如下 復制代碼  SELECT FORMAT(12324.2573,3);
 輸出: 12,324.257

2.在有where條件時使用

 代碼如下 復制代碼

SELECT book_name,FORMAT(book_price,4)  
FROM book_mast 
WHERE book_price>150;

二,TIME_FORMAT(time,format)

這是DATE_FORMAT()函數一樣使用,但只有幾個小時,分鐘和秒格式字符串可以包含格式說明符。

如果時間值包含了一個小時的一部分,大於23,%H和%k小時格式說明符產生的值大於正常范圍0 .. 23。一小時格式說明符產生的小時值(模12)。

 代碼如下 復制代碼

mysql> SELECT TIME_FORMAT('100:00:00', '%H %k %h %I %l');
+---------------------------------------------------------+
| TIME_FORMAT('100:00:00', '%H %k %h %I %l')              |
+---------------------------------------------------------+
| 100 100 04 04 4                                         |
+---------------------------------------------------------+
1 row in set (0.00 sec)

三,date_format

DATE_FORMAT()來格式化DATE或者DATETIME值,以便得到所希望的格式。
根據format字符串格式化date值:
%S, %s 兩位數字形式的秒( 00,01, . . ., 59)
%i 兩位數字形式的分( 00,01, . . ., 59)
%H 兩位數字形式的小時,24 小時(00,01, . . ., 23)
%h, %I 兩位數字形式的小時,12 小時(01,02, . . ., 12)
%k 數字形式的小時,24 小時(0,1, . . ., 23)
%l 數字形式的小時,12 小時(1, 2, . . ., 12)
%T 24 小時的時間形式(h h : m m : s s)
%r 12 小時的時間形式(hh:mm:ss AM 或hh:mm:ss PM)
%p AM 或P M
%W 一周中每一天的名稱( S u n d a y, Monday, . . ., Saturday)
%a 一周中每一天名稱的縮寫( Sun, Mon, . . ., Sat)
%d 兩位數字表示月中的天數( 00, 01, . . ., 31)
%e 數字形式表示月中的天數( 1, 2, . . ., 31)
%D 英文後綴表示月中的天數( 1st, 2nd, 3rd, . . .)
%w 以數字形式表示周中的天數( 0 = S u n d a y, 1=Monday, . . ., 6=Saturday)  www.111cn.net

%j 以三位數字表示年中的天數( 001, 002, . . ., 366)
% U 周(0, 1, 52),其中Sunday 為周中的第一天
%u 周(0, 1, 52),其中Monday 為周中的第一天
%M 月名(J a n u a r y, February, . . ., December)
%b 縮寫的月名( J a n u a r y, February, . . ., December)
%m 兩位數字表示的月份( 01, 02, . . ., 12)
%c 數字表示的月份( 1, 2, . . ., 12)
%Y 四位數字表示的年份
%y 兩位數字表示的年份
%% 直接值“%”

總結

format

小時,分鐘和秒格式字符串可以包含格式說明符

date_format

根據格式化串format格式化日期或日期和時間值date,返回結果串

TIME_FORMAT

格式化數字X為類似於格式'#,###,###.##',四捨五入到D為小數。如果D為0,結果將沒有小數點和小數部分

copyright © 萬盛學電腦網 all rights reserved