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)