【1】MySQL中的日期时间类型
MySQL中常用的几种时间类型有:date、datetime、time、year、timestamp
datetime : 时间日期型,格式是YYYY-mm-dd HH:ii:ss,表示的范围是从1000到9999。但是有零值,0000-00-00 00:00:00;
date:日期,就是datetime中的date部分;
time:时间(段),指定的某个区间之间,从-时间到+时间(有负时间表示);
timestamp:时间戳,并不是常规意义时间戳(如:14253685),范围是’1970-01-01 00:00:00’到2037年。格式为YYYY-mm-dd HH:ii:ss,格式与datetime完全一致;
year:yy和yyyy,yyyy的范围是1901-2155,yy的范围是1970-2069。
当前时间戳
UNIX_TIMESTAMP();
当前时间
SYSDATE()
常用当前时间
NOW(), datetime
NOW(3), 毫秒级datetime
NOW(6), 微妙级datetime
current_timestamp(),
current_timestamp(6) 微妙级datetime
,unix_timestamp(current_timestamp(3)), int 微秒时间戳中间有,号
REPLACE(unix_timestamp(current_timestamp(3)),’.’,”) 去掉,号
,unix_timestamp(current_timestamp(3))*1000 微秒级x1000 仍有,000
current_time,curtime() time部分
.current_date、curdate() date部分
【2】日期时间类型格式化
① DATE_FORMAT( )函数
可以使用date_format( )函数进行时间的转换。
SELECT DATE_FORMAT(SYSDATE(),’%Y-%m-%d %H:%i:%s’) from dual;
② str_to_date()函数
字符串转换为date:
str_to_date(
'2016-12-15 16:48:40',
'%Y-%m-%d %H:%i:%S'
)