MySQL中常用日期时间函数

下面的表格列出了 MySQL 中最重要的内建日期时间函数:

NOW()         返回当前的日期和时间
SYSDATE() 返回当前的日期和时间
CURDATE() 返回当前的日期
CURTIME() 返回当前的时间
DATE()        提取日期或日期/时间表达式的日期部分
EXTRACT() 返回日期/时间按的单独部分
DATE_ADD() 给日期添加指定的时间间隔
DATE_SUB() 从日期减去指定的时间间隔
DATEDIFF()         返回两个日期之间的天数
DATE_FORMAT()    用不同的格式显示日期/时间
FROM_UNIXTIME()    将整形存储的时间戳数值以"YYYY-MM-DD"格式来显示
UNIX_TIMESTAMP() 返回一个 Unix Timestamp ('1970-01-01 00:00:00' GMT 之后的秒数) 作为无符号整数
SEC_TO_TIME()     将秒值变换成小时、分钟和秒,值以'HH:MM:SS'或HHMMSS格式化
TIME_TO_SEC()  将时间变换转换成秒

1.NOW()

SELECT NOW();/*2013-10-25 15:24:12*/

2.SYSDATE()

SELECT SYSDATE();/*2013-10-25 15:24:12*/

3.UNIX_TIMESTAMP()

SELECT UNIX_TIMESTAMP();/*1382685853*/

SELECT UNIX_TIMESTAMP('2013-09-09 12:12:12'); /*1378699932*/

4.FROM_UNIXTIME()

SELECT  FROM_UNIXTIME(137123321); /* 1974-05-07 09:48:41 */

5.DATE_ADD()

SELECT DATE_ADD('2013-09-09 12:12:12',1);/*2013-09-10 12:12:12*/

6.DATE_SUB()

SELECT DATE_SUB(@orderdate,INTERVAL 2 DAY) AS OrderPayDate;/*2013-10-23 12:12:12*/

7.DATEDIFF()

DATEDIFF('2008-12-30','2008-12-29') AS DiffDate

结果:1

SELECT  DATEDIFF('2008-12-29','2008-12-30') AS DiffDate

结果:-1

8.DATE_FORMAT()

DATE_FORMAT(NOW(),'%b %d %Y %h:%i %p')
DATE_FORMAT(NOW(),'%m-%d-%Y')
 结果类似: 
Dec 29 2008 11:45 PM
12-29-2008

9.EXTRACT()

SELECT EXTRACT(YEAR FROM @orderdate) AS OrderYear,
EXTRACT(MONTH FROM @orderdate) AS OrderMonth,
EXTRACT(DAY FROM @orderdate) AS OrderDay;

10.SEC_TO_TIME()

select SEC_TO_TIME(2378);  
结果: '00:39:38'

11.TIME_TO_SEC()

select TIME_TO_SEC('00:39:38');  
结果:2378 

你可能感兴趣的:(数据库技术)