Home > Database > Mysql Tutorial > body text

mysql日期时间常用函数总结

WBOY
Release: 2016-06-07 17:53:06
Original
1129 people have browsed it

在mysql中我们经常会用到一些常用的时间与日期一些运算,下面我来总结一下关于mysql日期时间常用函数介绍,有需要的朋友参考。

一、时间差

datediff:说白了就是用第一个时间去减第二个时间,顺序不能忘记

 代码如下 复制代码

select datediff('2012-08-08', '2012-08-13'); -- -5

二、获取当前时间

 代码如下 复制代码

now
current_timestamp()
,current_timestamp
,localtime()
,localtime
,localtimestamp    -- (v4.0.6)
,localtimestamp()  -- (v4.0.6)

sysdate(); //动态获取系统时间。这个要和now函数区分来,now就好比已经定义了一个变量,sysdate等于变量是在运行到后确定,所以他们有一个时差


三、获得当前日期(date)函数

curdate()

以'YYYY-MM-DD'或YYYYMMDD格式返回今天日期值,取决于函数是在一个字符串还是数字上下文被使用。

 代码如下 复制代码

mysql> select CURDATE();

+------------+

| CURDATE()  |

+------------+

| 2001-02-20 |

+------------+


current_date()


四、获得当前时间

curtime()

CURTIME() 返回当前时间

以'HH:MM:SS'或HHMMSS格式返回当前时间值,取决于函数是在一个字符串还是在数字的上下文被使用。

 代码如下 复制代码

mysql> select CURTIME();

+-----------+

| CURTIME() |

+-----------+

| 10:42:38  |

+-----------+


current_time()
current_time

五、获得当前 UTC 日期时间函数

 代码如下 复制代码

select utc_timestamp(), utc_date(), utc_time(), now()

六、Mysql日期时间函数

 代码如下 复制代码

set @dt = '2008-09-10 07:15:30.123456';
 
select date(@dt);        -- 2008-09-10
select time(@dt);        -- 07:15:30.123456
select year(@dt);        -- 2008
select quarter(@dt);     -- 3
select month(@dt);       -- 9
select week(@dt);        -- 36
select day(@dt);         -- 10
select hour(@dt);        -- 7
select minute(@dt);      -- 15
select second(@dt);      -- 30
select microsecond(@dt); -- 123456


下面分离一些年月日函数

下面的查询选择了所有记录,其date_col的值是在最后30天以内:

 代码如下 复制代码

mysql> SELECT something FROM table
WHERE TO_DAYS(NOW()) - TO_DAYS(date_col)

DAYOFWEEK(date)

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。

 代码如下 复制代码

mysql> select DAYOFWEEK('1998-02-03'/res/images/smilies/wink.gif;
-> 3

WEEKDAY(date)

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。

 代码如下 复制代码

mysql> select WEEKDAY('1997-10-04 22:23:00'/res/images/smilies/wink.gif;

-> 5

mysql> select WEEKDAY('1997-11-05'/res/images/smilies/wink.gif;

-> 2

 

DAYOFMONTH(date)

返回date的月份中日期,在1到31范围内。

 代码如下 复制代码

mysql> select DAYOFMONTH('1998-02-03'/res/images/smilies/wink.gif;

-> 3

DAYOFYEAR(date)

返回date在一年中的日数, 在1到366范围内。

 代码如下 复制代码

mysql> select DAYOFYEAR('1998-02-03'/res/images/smilies/wink.gif;

-> 34

MONTH(date)

返回date的月份,范围1到12。

 代码如下 复制代码

mysql> select MONTH('1998-02-03'/res/images/smilies/wink.gif;

-> 2

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!