在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 數(shù)據(jù)庫(kù)/ MySQL 日期與時(shí)間方面的函數(shù)
MySQL 復(fù)制表
MySQL ALTER 命令
MySQL 安裝
MySQL 日期與時(shí)間方面的函數(shù)
MySQL SQL Injection
MySQL 排序結(jié)果
MySQL 臨時(shí)表
MySQL 介紹
MySQL 數(shù)據(jù)導(dǎo)出
MySQL 索引
MySQL 數(shù)值函數(shù)
MySQL 更新查詢
MySQL UNION 關(guān)鍵字
MySQL RAND 函數(shù)
創(chuàng)建 MySQL 數(shù)據(jù)庫(kù)
MySQL AVG 函數(shù)
MySQL Using Join
MySQL Handling Duplicates
MySQL SUM 函數(shù)
MySQL 數(shù)據(jù)類型
MySQL 插入查詢
MySQL 字符串函數(shù)
MySQL Using Sequences
MySQL 管理
MySQL 數(shù)據(jù)導(dǎo)入
MySQL BETWEEN 子句
MySQL MIN 函數(shù)
創(chuàng)建 MySQL 表
MySQL Group By 子句
MySQL COUNT 函數(shù)
MySQL 匯報(bào)
MySQL 選擇數(shù)據(jù)庫(kù)
MySQL Where Clause
MySQL 選擇查詢
MySQL Like Clause
MySQL 正則表達(dá)式
一些非常有用的學(xué)習(xí)資源
MySQL NULL Values
MySQL 刪除查詢
MySQL 數(shù)據(jù)庫(kù)信息
一些有用的 MySQL 函數(shù)與子句
MySQL 刪除表
MySQL MAX 函數(shù)
MySQL SQRT 函數(shù)
MySQL 終止數(shù)據(jù)庫(kù)
連接 MySQL 服務(wù)器
MySQL IN 子句
MySQL CONCAT 函數(shù)
MySQL PHP語(yǔ)法

MySQL 日期與時(shí)間方面的函數(shù)

函數(shù)名稱 函數(shù)功能說(shuō)明
ADDDATE() 添加日期
ADDTIME() 添加時(shí)間
CONVERT_TZ() 轉(zhuǎn)換不同時(shí)區(qū)
CURDATE() 返回當(dāng)前日期
CURRENT_DATE()CURRENT_DATE 等同于 CURDATE()
CURRENT_TIME()CURRENT_TIME 等同于 CURTIME()
CURRENT_TIMESTAMP()CURRENT_TIMESTAMP 等同于 NOW()
CURTIME() 返回當(dāng)前時(shí)間
DATE_ADD() 添加兩個(gè)日期
DATE_FORMAT() 按指定方式格式化日期
DATE_SUB() 求解兩個(gè)日期的間隔
DATE() 提取日期或日期時(shí)間表達(dá)式中的日期部分
DATEDIFF() 求解兩個(gè)日期的間隔
DAY() 等同于 DAYOFMONTH()
DAYNAME() 返回星期中某天的名稱
DAYOFMONTH() 返回一月中某天的序號(hào)(1-31)
DAYOFWEEK() 返回參數(shù)所定影的一周中某天的索引值
DAYOFYEAR() 返回一年中某天的序號(hào)(1-366)
EXTRACT 提取日期中的相應(yīng)部分
FROM_DAYS() 將一個(gè)天數(shù)序號(hào)轉(zhuǎn)變?yōu)槿掌谥?/td>
FROM_UNIXTIME() 將日期格式化為 UNIX 的時(shí)間戳
HOUR() 提取時(shí)間
LAST_DAY 根據(jù)參數(shù),返回月中最后一天
LOCALTIME()LOCALTIME 等同于 NOW()
LOCALTIMESTAMPLOCALTIMESTAMP() 等同于 NOW()
MAKEDATE() 基于給定參數(shù)年份和所在年中的天數(shù)序號(hào),返回一個(gè)日期
MAKETIME MAKETIME()
MICROSECOND() 返回參數(shù)所對(duì)應(yīng)的毫秒數(shù)
MINUTE() 返回參數(shù)對(duì)應(yīng)的分鐘數(shù)
MONTH() 返回傳入日期所對(duì)應(yīng)的月序數(shù)
MONTHNAME() 返回月的名稱
NOW() 返回當(dāng)前日期與時(shí)間
PERIOD_ADD() 為年-月組合日期添加一個(gè)時(shí)段
PERIOD_DIFF() 返回兩個(gè)時(shí)段之間的月份差值
QUARTER() 返回日期參數(shù)所對(duì)應(yīng)的季度序號(hào)
SEC_TO_TIME() 將描述轉(zhuǎn)變成 'HH:MM:SS' 的格式
SECOND() 返回秒序號(hào)(0-59)
STR_TO_DATE() 將字符串轉(zhuǎn)變?yōu)槿掌?/td>
SUBDATE() 三個(gè)參數(shù)的版本相當(dāng)于 DATE_SUB()
SUBTIME() 計(jì)算時(shí)間差值
SYSDATE() 返回函數(shù)執(zhí)行時(shí)的時(shí)間
TIME_FORMAT() 提取參數(shù)中的時(shí)間部分
TIME_TO_SEC() 將參數(shù)轉(zhuǎn)化為秒數(shù)
TIME() 提取傳入表達(dá)式的時(shí)間部分
TIMEDIFF() 計(jì)算時(shí)間差值
TIMESTAMP() 單個(gè)參數(shù)時(shí),函數(shù)返回日期或日期時(shí)間表達(dá)式;有2個(gè)參數(shù)時(shí),將參數(shù)加和
TIMESTAMPADD() 為日期時(shí)間表達(dá)式添加一個(gè)間隔 INTERVAL
TIMESTAMPDIFF() 從日期時(shí)間表達(dá)式中減去一個(gè)間隔 INTERVAL
TO_DAYS() 返回轉(zhuǎn)換成天數(shù)的日期參數(shù)
UNIX_TIMESTAMP() 返回一個(gè) UNIX 時(shí)間戳
UTC_DATE() 返回當(dāng)前的 UTC 日期
UTC_TIME() 返回當(dāng)前的 UTC 時(shí)間
UTC_TIMESTAMP() 返回當(dāng)前的 UTC 時(shí)間與日期
WEEK() 返回周序號(hào)
WEEKDAY() 返回某天在星期中的索引值
WEEKOFYEAR() 返回日期所對(duì)應(yīng)的星期在一年當(dāng)中的序號(hào)(1-53)
YEAR() 返回年份
YEARWEEK() 返回年份及星期序號(hào)

ADDDATE(date,INTERVAL expr unit), ADDDATE(expr,days)

在第2個(gè)參數(shù)使用 INTERVAL 格式時(shí),ADDDATE() 作用就相當(dāng)于 DATE_ADD()。相關(guān)的函數(shù) SUBDATE() 相當(dāng)于 DATE_SUB()。要想了解 INTERVAL 單位參數(shù),參看DATE_ADD()相關(guān)內(nèi)容。示例如下:

mysql> SELECT DATE_ADD('1998-01-02', INTERVAL 31 DAY);
+---------------------------------------------------------+
| DATE_ADD('1998-01-02', INTERVAL 31 DAY)                 |
+---------------------------------------------------------+
| 1998-02-02                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT ADDDATE('1998-01-02', INTERVAL 31 DAY);
+---------------------------------------------------------+
| ADDDATE('1998-01-02', INTERVAL 31 DAY)                  |
+---------------------------------------------------------+
| 1998-02-02                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

當(dāng)函數(shù)的第2個(gè)參數(shù)采用 days 格式時(shí),MySQL 會(huì)認(rèn)為它是一個(gè)表示天數(shù)的整數(shù),將它添加到 expr 上。示例如下:

mysql> SELECT ADDDATE('1998-01-02', 31);
+---------------------------------------------------------+
| DATE_ADD('1998-01-02', INTERVAL 31 DAY)                 |
+---------------------------------------------------------+
| 1998-02-02                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

ADDTIME(expr1, expr2)

ADDTIME() 將 expr2 參數(shù)加到 expr1 參數(shù)上,返回結(jié)果。expr1 是一個(gè)時(shí)間或日期時(shí)間表達(dá)式。expr2 是一個(gè)時(shí)間表達(dá)式。

mysql> SELECT ADDTIME('1997-12-31 23:59:59.999999','1 1:1:1.000002');
+---------------------------------------------------------+
| DATE_ADD('1997-12-31 23:59:59.999999','1 1:1:1.000002') |
+---------------------------------------------------------+
| 1998-01-02 01:01:01.000001                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CONVERT_TZ(dt,from_tz,to_tz)

這是一個(gè)轉(zhuǎn)換時(shí)區(qū)的函數(shù),將參數(shù) from_tz 所定時(shí)區(qū)的日期時(shí)間值 dt 轉(zhuǎn)變到參數(shù) to_tz 所定時(shí)區(qū),然后返回結(jié)果。如果參數(shù)無(wú)效,則該函數(shù)返回 NULL 值。

mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');
+---------------------------------------------------------+
| CONVERT_TZ('2004-01-01 12:00:00','GMT','MET')           |
+---------------------------------------------------------+
| 2004-01-01 13:00:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00');
+---------------------------------------------------------+
| CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00')     |
+---------------------------------------------------------+
| 2004-01-01 22:00:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CURDATE()

返回當(dāng)前日期的函數(shù)。根據(jù)函數(shù)究竟用于字符串還是數(shù)字上下文,選擇使用 'YYYY-MM-DD'('年-月-日') 或 YYYYMMDD(年月日) 格式返回當(dāng)前日期。

mysql> SELECT CURDATE();
+---------------------------------------------------------+
| CURDATE()                                               |
+---------------------------------------------------------+
| 1997-12-15                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT CURDATE() + 0;
+---------------------------------------------------------+
| CURDATE() + 0                                           |
+---------------------------------------------------------+
| 19971215                                                |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CURRENT_DATECURRENT_DATE()

CURRENT_DATECURRENT_DATE() 實(shí)際上等于 CURDATE()。

CURTIME()

根據(jù)函數(shù)究竟用于字符串或數(shù)字上下文,選擇以 'HH:MM:SS' 還是 HHMMSS 格式返回當(dāng)前時(shí)間值(以當(dāng)前時(shí)區(qū)來(lái)定)。

mysql> SELECT CURTIME();
+---------------------------------------------------------+
| CURTIME()                                               |
+---------------------------------------------------------+
| 23:50:26                                                |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT CURTIME() + 0;
+---------------------------------------------------------+
| CURTIME() + 0                                           |
+---------------------------------------------------------+
| 235026                                                  |
+---------------------------------------------------------+
1 row in set (0.00 sec)

CURRENT_TIME 和 CURRENT_TIME()

CURRENT_TIMECURRENT_TIME() 都相當(dāng)于 CURTIME()

CURRENT_TIMESTAMP 和 CURRENT_TIMESTAMP()

CURRENT_TIMESTAMPCURRENT_TIMESTAMP() 實(shí)際上相當(dāng)于 NOW()

DATE(expr)

提取日期或日期時(shí)間表達(dá)式 expr 中的日期部分。

mysql> SELECT DATE('2003-12-31 01:02:03');
+---------------------------------------------------------+
| DATE('2003-12-31 01:02:03')                             |
+---------------------------------------------------------+
|  2003-12-31                                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DATEDIFF(expr1,expr2)

DATEDIFF()將返回expr1 - expr2的值,用來(lái)表示兩個(gè)日期相差的天數(shù)。expr1expr2 都是日期或日期時(shí)間表達(dá)式。運(yùn)算中只用到了這些值的日期部分。

mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');
+---------------------------------------------------------+
| DATEDIFF('1997-12-31 23:59:59','1997-12-30')            |
+---------------------------------------------------------+
| 1                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DATE_ADD(date,INTERVAL expr unit) 與 DATE_SUB(date,INTERVAL expr unit)

執(zhí)行日期計(jì)算的兩種函數(shù)。date 是一個(gè)用來(lái)指定開始日期的 DATETIME 或 DATE 值。expr 是一種以字符串形式呈現(xiàn)的表達(dá)式,用來(lái)指定從開始日期增加或減少的間隔值。如果是負(fù)的間隔值,則 expr 值的第一個(gè)字符是-號(hào)。unit 是一個(gè)單位關(guān)鍵字,用來(lái)指定expr表達(dá)式應(yīng)該采取的單位。

INTERVAL 關(guān)鍵字與單位說(shuō)明符都不區(qū)分大小寫。

下表列出了每個(gè)單位數(shù)值所對(duì)應(yīng)的 expr 參數(shù)的期望格式。

單位所能取的值 期望的expr格式
MICROSECOND 毫秒
SECOND
MINUTE
HOUR 小時(shí)
DAY
WEEK
MONTH
QUARTER 季度
YEAR
SECOND_MICROSECOND '秒.毫秒'
MINUTE_MICROSECOND '分.毫秒'
MINUTE_SECOND '分:秒'
HOUR_MICROSECOND '小時(shí).毫秒'
HOUR_SECOND '小時(shí):分:秒'
HOUR_MINUTE '小時(shí):分'
DAY_MICROSECOND '日.毫秒'
DAY_SECOND '日 小時(shí):分:秒'
DAY_MINUTE '日 小時(shí):分'
DAY_HOUR '日 小時(shí)'
YEAR_MONTH '年-月'

QUARTER 和 WEEK 都是 MySQL 5.0.0 才開始引入的單位值。

mysql> SELECT DATE_ADD('1997-12-31 23:59:59', 
    -> INTERVAL '1:1' MINUTE_SECOND);
+---------------------------------------------------------+
| DATE_ADD('1997-12-31 23:59:59', INTERVAL...             |
+---------------------------------------------------------+
| 1998-01-01 00:01:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_ADD('1999-01-01', INTERVAL 1 HOUR);
+---------------------------------------------------------+
| DATE_ADD('1999-01-01', INTERVAL 1 HOUR)                 |
+---------------------------------------------------------+
| 1999-01-01 01:00:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DATE_FORMAT(date,format)

該函數(shù)會(huì)根據(jù) format 字符串來(lái)格式化 date 值。

下表中列出了一些可用于 format 字符串的標(biāo)識(shí)符。格式標(biāo)識(shí)符第一個(gè)字符必須是%字符。

格式標(biāo)識(shí)符 說(shuō)明
%a 一星期中每天名稱的縮寫(Sun...Sat)
%b 月份的縮寫(Jan...Dec)
%c 月份的數(shù)字表現(xiàn)形式(0...12)
%D 帶有英語(yǔ)后綴的一個(gè)月中的每一天的名稱(0th、1st、2nd、3rd)
%d 用數(shù)字形式表現(xiàn)的每月中的每一天(00...31)
%e 用數(shù)字形式表現(xiàn)的每月中的每一天(0...31)
%f 毫秒(000000...999999)
%H 24時(shí)制顯示的小時(shí)(00...23)
%h 12時(shí)制顯示的小時(shí)(01...12)
%I 12時(shí)制顯示的小時(shí)(01...12)
%i 以數(shù)字形式表現(xiàn)的分鐘數(shù)(00...59)
%j 一年中的每一天(001...366)
%k 24時(shí)制小時(shí)的另一種表現(xiàn)格式(0...23)
%l 12時(shí)制小時(shí)的另一種表現(xiàn)格式(1...12)
%M 用完整英文名稱表示的月份(January...December)
%m 用數(shù)字表現(xiàn)的月份(00...12)
%p 上午(AM)或下午(PM)
%r 12時(shí)制的時(shí)間值(hh:mm:ss,后跟 AM 或 PM)
%S 秒(00...59)
%s 秒(00...59)
%T 24時(shí)制的小時(shí)(hh:mm:ss)
%U 星期(00...53),其中星期天是每星期的開始日
%u 星期(00...53),其中星期一是每星期的開始日
%V 星期(01...53),其中星期天是每星期的開始日,和 %X 一起使用
%v 星期(01...53),其中星期一是每星期的開始日,和 %x 一起使用
%W 一星期中各日名稱(Sunday...Saturday)
%w 一星期中各日名稱(0代表星期日,6代表星期六,以此類推)
%X 某星期所處年份。其中,星期天是每星期的開始日,采用4位數(shù)字形式表現(xiàn),和 %V一起使用
%x 某星期所處年份。其中,星期一是每星期的開始日,采用4位數(shù)字形式表現(xiàn),和 %V 一起使用
%Y 4位數(shù)字表示的年份
%y 2位數(shù)字表示的年份
%% 符號(hào)%的字面值
%x(x為斜體) 字符x的字面值,x指以上未列出的任何字符
mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');
+---------------------------------------------------------+
| DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y')          |
+---------------------------------------------------------+
| Saturday October 1997                                   |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00'
    -> '%H %k %I %r %T %S %w');
+---------------------------------------------------------+
| DATE_FORMAT('1997-10-04 22:23:00.......                 |
+---------------------------------------------------------+
|  22 22 10 10:23:00 PM 22:23:00 00 6                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DATE_SUB(date,INTERVAL expr unit)

類似 DATE_ADD() 函數(shù)。

DAY(date)

DAY() 等同于 DAYOFMONTH()。

DAYNAME(date)

返回 date 參數(shù)所對(duì)應(yīng)的星期幾。

mysql> SELECT DAYNAME('1998-02-05');
+---------------------------------------------------------+
| DAYNAME('1998-02-05')                                   |
+---------------------------------------------------------+
| Thursday                                                |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DAYOFMONTH(date)

返回 date 參數(shù)所對(duì)應(yīng)的一月中的第幾天,取值范圍從0到31。

mysql> SELECT DAYOFMONTH('1998-02-03');
+---------------------------------------------------------+
| DAYOFMONTH('1998-02-03')                                |
+---------------------------------------------------------+
| 3                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DAYOFWEEK(date)

返回 date 參數(shù)所對(duì)應(yīng)的每周中的某一天的索引值(1 = Sunday,2 = Monday……7 = Saturday)。這些索引值對(duì)應(yīng)著 ODBC 標(biāo)準(zhǔn)。

mysql> SELECT DAYOFWEEK('1998-02-03');
+---------------------------------------------------------+
|DAYOFWEEK('1998-02-03')                                  |
+---------------------------------------------------------+
| 3                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

DAYOFYEAR(date)

返回 date 參數(shù)所對(duì)應(yīng)的一年中的某一天,取值范圍從1到366。

mysql> SELECT DAYOFYEAR('1998-02-03');
+---------------------------------------------------------+
| DAYOFYEAR('1998-02-03')                                 |
+---------------------------------------------------------+
| 34                                                      |
+---------------------------------------------------------+
1 row in set (0.00 sec)

EXTRACT(unit FROM date)

EXTRACT() 函數(shù) 使用同樣的單位標(biāo)識(shí)符 DATE_ADD()DATE_SUB(),但是只從 date 中提取相應(yīng)部分,而不執(zhí)行日期運(yùn)算。

mysql> SELECT EXTRACT(YEAR FROM '1999-07-02');
+---------------------------------------------------------+
| EXTRACT(YEAR FROM '1999-07-02')                         |
+---------------------------------------------------------+
| 1999                                                    |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT EXTRACT(YEAR_MONTH FROM '1999-07-02 01:02:03');
+---------------------------------------------------------+
| EXTRACT(YEAR_MONTH FROM '1999-07-02 01:02:03')          |
+---------------------------------------------------------+
| 199907                                                  |
+---------------------------------------------------------+
1 row in set (0.00 sec)

FROM_DAYS(N)

給定某日 N,返回一個(gè) DATE 值。

mysql> SELECT FROM_DAYS(729669);
+---------------------------------------------------------+
| FROM_DAYS(729669)                                       |
+---------------------------------------------------------+
| 1997-10-07                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

使用 FROM_DAYS() 時(shí),要特別注意古代的日期。該函數(shù)不適用于格里高里歷(即公歷)頒布(公元1582年)之前的日期。

FROM_UNIXTIME(unix_timestamp) FROM_UNIXTIME(unix_timestamp,format)

mysql> SELECT FROM_UNIXTIME(875996580);
+---------------------------------------------------------+
| FROM_UNIXTIME(875996580)                                |
+---------------------------------------------------------+
| 1997-10-04 22:23:00                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

HOUR(time)

mysql> SELECT HOUR('10:05:03');
+---------------------------------------------------------+
| HOUR('10:05:03')                                        |
+---------------------------------------------------------+
| 10                                                      |
+---------------------------------------------------------+
1 row in set (0.00 sec)

LAST_DAY(date)

mysql> SELECT LAST_DAY('2003-02-05');
+---------------------------------------------------------+
| LAST_DAY('2003-02-05')                                  |
+---------------------------------------------------------+
| 2003-02-28                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

LOCALTIME 和 LOCALTIME()

LOCALTIMELOCALTIME()NOW() 具有相同意義。

LOCALTIMESTAMP 和 LOCALTIMESTAMP()

LOCALTIMESTAMPLOCALTIMESTAMP()NOW()具有相同意義。

MAKEDATE(year,dayofyear)

基于給定參數(shù)年份(year)和一年中的某一天(dayofyear,返回一個(gè)日期值。dayofyear必須大于0,否則結(jié)果為空。

dayofyearDAYOFYEAR()函數(shù)取值類似,取值范圍為1-366。

mysql> SELECT MAKEDATE(2001,31), MAKEDATE(2001,32);
+---------------------------------------------------------+
| MAKEDATE(2001,31), MAKEDATE(2001,32)                    |
+---------------------------------------------------------+
| '2001-01-31', '2001-02-01'                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MAKETIME(hour,minute,second)

基于給定的 hour、minute以及 second 這3個(gè)參數(shù),計(jì)算出一個(gè)時(shí)間值。

mysql> SELECT MAKETIME(12,15,30);
+---------------------------------------------------------+
| MAKETIME(12,15,30)                                      |
+---------------------------------------------------------+
| '12:15:30'                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MICROSECOND(expr)

基于時(shí)間或“日期+時(shí)間”的表達(dá)式 expr,返回一個(gè)以毫秒計(jì)的時(shí)間值,取值范圍為0-99999。

mysql> SELECT MICROSECOND('12:00:00.123456');
+---------------------------------------------------------+
| MICROSECOND('12:00:00.123456')                          |
+---------------------------------------------------------+
| 123456                                                  |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MINUTE(time)

基于 time 參數(shù),返回分鐘數(shù),取值范圍為0-59。

mysql> SELECT MINUTE('98-02-03 10:05:03');
+---------------------------------------------------------+
| MINUTE('98-02-03 10:05:03')                             |
+---------------------------------------------------------+
| 5                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MONTH(date)

基于 date 參數(shù),返回月份值,取值范圍為0-12。

mysql> SELECT MONTH('1998-02-03')
+---------------------------------------------------------+
| MONTH('1998-02-03')                                     |
+---------------------------------------------------------+
| 2                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

MONTHNAME(date)

基于 date 參數(shù),返回月份的完整英文名稱。

mysql> SELECT MONTHNAME('1998-02-05');
+---------------------------------------------------------+
| MONTHNAME('1998-02-05')                                 |
+---------------------------------------------------------+
| February                                                |
+---------------------------------------------------------+
1 row in set (0.00 sec)

NOW()

返回一定格式的日期+時(shí)間值。根據(jù)函數(shù)是否用于字符串或數(shù)字內(nèi)容,格式為 'YYYY-MM-DD HH:MM:SS' 或 YYYYMMDDHHMMSS。

mysql> SELECT NOW();
+---------------------------------------------------------+
| NOW()                                                   |
+---------------------------------------------------------+
| 1997-12-15 23:50:26                                     |
+---------------------------------------------------------+
1 row in set (0.00 sec)

PERIOD_ADD(P,N)

將 N 個(gè)月添加到時(shí)段 P (格式為 YYMM 或 YYYYMM)上,返回值格式為 YYYYMM。注意:時(shí)段參數(shù) P 不是一個(gè)日期值。

mysql> SELECT PERIOD_ADD(9801,2);
+---------------------------------------------------------+
| PERIOD_ADD(9801,2)                                      |
+---------------------------------------------------------+
| 199803                                                  |
+---------------------------------------------------------+
1 row in set (0.00 sec)

PERIOD_DIFF(P1,P2)

時(shí)段 P1P2 之間的月份差值。P1P2 的格式應(yīng)為 YYMM 或 YYYYMM。注意,時(shí)段參數(shù) P1P2 都不是日期值。

mysql> SELECT PERIOD_DIFF(9802,199703);
+---------------------------------------------------------+
| PERIOD_DIFF(9802,199703)                                |
+---------------------------------------------------------+
| 11                                                      |
+---------------------------------------------------------+
1 row in set (0.00 sec)

QUARTER(date)

返回參數(shù) date 所對(duì)應(yīng)的年中某季度,取值范圍為1-4。

mysql> SELECT QUARTER('98-04-01');
+---------------------------------------------------------+
| QUARTER('98-04-01')                                     |
+---------------------------------------------------------+
| 2                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

SECOND(time)

返回參數(shù) time 所對(duì)應(yīng)的秒數(shù),取值范圍為0-59。

mysql> SELECT SECOND('10:05:03');
+---------------------------------------------------------+
| SECOND('10:05:03')                                      |
+---------------------------------------------------------+
| 3                                                       |
+---------------------------------------------------------+
1 row in set (0.00 sec)

SEC_TO_TIME(seconds)

將參數(shù) seconds 轉(zhuǎn)換成以'HH:MM:SS' 或 HHMMSS 格式(根據(jù)函數(shù)應(yīng)用上下文是字符串還是數(shù)字)輸出的時(shí)間值。

mysql> SELECT SEC_TO_TIME(2378);
+---------------------------------------------------------+
| SEC_TO_TIME(2378)                                       |
+---------------------------------------------------------+
| 00:39:38                                                |
+---------------------------------------------------------+
1 row in set (0.00 sec)

STR_TO_DATE(str,format)

DATE_FORMAT()函數(shù)的逆向函數(shù)。包含2個(gè)參數(shù),字符串類型參數(shù) str 和格式字符串參數(shù) format。返回值有2種可能性:如果格式字符串既包含日期又包含時(shí)間,則返回一個(gè) DATETIME 值;如果格式字符串只包含日期或時(shí)間部分,則函數(shù)也相應(yīng)返回 DATE 或 TIME 類型的值。

mysql> SELECT STR_TO_DATE('04/31/2004', '%m/%d/%Y');
+---------------------------------------------------------+
| STR_TO_DATE('04/31/2004', '%m/%d/%Y')                   |
+---------------------------------------------------------+
| 2004-04-31                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

SUBDATE(date,INTERVAL expr unit) 與 SUBDATE(expr,days)

當(dāng)?shù)诙€(gè)參數(shù)采用 INTERVAL 格式時(shí),SUBDATE() 等同于 DATE_SUB()。要想詳細(xì)了解 INTERVAL 單元參數(shù),請(qǐng)參考 DATE_ADD()。

mysql> SELECT DATE_SUB('1998-01-02', INTERVAL 31 DAY);
+---------------------------------------------------------+
| DATE_SUB('1998-01-02', INTERVAL 31 DAY)                 |
+---------------------------------------------------------+
| 1997-12-02                                              |
+---------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT SUBDATE('1998-01-02', INTERVAL 31 DAY);
+----------------------------