1select UNIX_TIMESTAMP()
返回1970到当前时间的秒数,也可以带参数,表示1970到指定时间的秒数
2select DATE_FORMAT(NOW(),'%Y-%m-%d %h:%i:%s')
时间格式化 %y返回两位年 %Y返回4位年
3select FROM_UNIXTIME(123456789[,fmt])
通过秒返回日期,第一个参数必须,为1970之后的秒数,第二个参数可选,对日期进行格式化,默认为%Y-%m-%d %h:%i:%s
4NOW()/CURDATE()/CURRENT_DATE()/CURTIME()/CURRENT_TIME()/CURRENT_TIMESTAMP()/CURRENT_DATE/CURRENT_TIMESTAMP
获取当前时间或日期的几个函数或变量,像CURDATE()/CURRENT_DATE()都是返回当前日期,区别没看出来,估计是线程启动前和开始执行的这些区别、对于不是太耗时的sql应该没什么区别
5select YEAR()/MONTH()/DAY()/HOUR()/MINUTE()/SECOND()
懂的自然都懂~
6select DAYOFMONTH()\DAYOFWEEK()\DAYOFYEAR()\DAYNAME()\QUARTER()
参数为日期 分别表示一个的多少天、一周的多少天、一年的多少天、星期的英文名字、季度,其中周星期日是第一天
7select TO_DAYS(NOW())
返回公元0年到现在的天数
8select DATE_SUB(CURDATE(),INTERVAL 1 DAY)/DATE_ADD(CURDATE(),INTERVAL 1 DAY)
日期加减 第一个参数指定日期、第二个参数有点像关键字、可正负、第三个参数指定间隔数量、第四个表示间隔类型,对应到三个参数 1天、1分钟等等
可选 YEAR MONTH DAY HOUR MINUTE SECOND
9select MAKEDATE(2014,50)\select MAKETIME(10,15,0)
创建指定日期或时间
测试代码
select UNIX_TIMESTAMP()
select DATE_FORMAT(NOW(),'%Y-%m-%d %h:%i:%s')
select FROM_UNIXTIME(123456789)
select NOW()
select CURDATE()
select CURRENT_DATE()
select CURTIME()
select CURRENT_TIME()
select CURRENT_TIMESTAMP()
select CURRENT_DATE
select CURRENT_TIMESTAMP
select CURRENT_USER()
select YEAR()
select MONTH()
select DAY()
select HOUR()
select MINUTE()
select SECOND()
select DAYOFMONTH()
select DAYOFWEEK('2014-1-26')
select DAYOFYEAR(now())
select TO_DAYS('0-1-1')
select DATE_SUB(CURDATE(),INTERVAL 1 DAY)
select DATE_ADD(CURDATE(),INTERVAL 1 DAY)
select MAKEDATE(2014,50)
select MAKETIME(10,15,0)