Mysql中日期和时间的数据类型:
date 日期数据类型
表示1000-01-01 ~ 9999-12-31的日期,格式为 YYYY-MM-DD ,存储空间为4byte
time 时间数据类型
范围: -838:59:59 ~ 838:59:59, 格式为 HH:MM:SS,存储空间为3byte。不仅可以表示一天中的时间,还可以表示过去的时间或者两个时间的时间间隔,因此扩大了范围并且支持负数。
datetime 日期和时间数据类型,是date和time的组合
范围:1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
格式为 YYYY-MM-DD HH:MM:SS。存储空间为8byte
timestamp 日期和时间数据类型,较datetime范围小
范围: 1970-01-01 08:00:01~~2038-01-19 11:14:07
格式为 YYYY-MM-DD HH:MM:SS,存储空间4byte
year 日期数据类型,
范围: 1901-2155 格式为: YYYY,存储空间1byte
时间处理函数:
注:以下括号中参数并不严格规定
NOW() 获取当前日期+时间的函数
SELECT NOW()
查询结果:
2017-05-28 17:07:19
CURDATE() 获取当前日期的函数
SELECT CURDATE()
查询结果:
2017-05-28
CURTIME() 获取当前时间的函数
SELECT CURTIME()
查询结果:
17:10:30
注:date or datetime
DATE(date) 返回日期时间中的日期部分 date or datetime
SELECT DATE('2017-05-28 17:22:14')
运行结果:
2017-05-28
TIME(date) 返回日期时间中的时间部分
SELECT TIME('2017-05-28 17:22:14')
运行结果:
17:22:14
YEAR(date) 返回一个日期中年份部分
SELECT YEAR('2017-05-28 17:15:41')
查询结果:
2017
MONTH(date) 返回一个日期中月份部分
SELECT MONTH('2017-05-28 17:15:41')
查询结果:
5
DAY(date) 返回一个日期中日份部分
SELECT DAY('2017-05-28 17:15:41')
查询结果:
28
HOUR(time) 返回一个时间中小时部分
SELECT HOUR('17:15:41')
查询结果:
17
MINUTE(time) 返回一个时间中分钟部分
SELECT MINUTE('17:15:41')
查询结果:
15
SECOND(time) 返回一个时间中秒部分
SELECT SECOND('17:15:41')
查询结果:
41