MySQl中有多种表示日期和时间的数据类型。其中YEAR表示年份,DATE表示日期,TIME表示时间,DATETIME和TIMESTAMP表示日期和实践。它们的对比如下:
YEAR ,字节数为1,取值范围为“1901——2155”
DATE,字节数为4,取值范围为“1000-01-01——9999-12-31”
TIME,字节数为3,取值范围为“-838:59:59——838:59:59”
DATETIME,字节数为8,取值范围为“1000-01-01 00:00:00——9999-12-31 23:59:59”
TIMESTAMP,字节数为4,取值范围为“19700101080001——20380119111407”
  当插入值超出有效取值范围时,系统会报错,并将零值插入到数据库中。
  1. YEAR类型
    给YEAR类型复制可以有三种方法。
    第一种是直接插入4位字符串或者4位数字。
    第二种是插入2位字符串,这种情况下如果插入‘00’~‘69’,则相当于插入2000~2069;如果插入‘70’~‘99’,则相当于插入1970~1999。第二种情况下插入的如果是‘0’,则与插入‘00’效果相同,都是表示2000年。
    第三种是插入2位数字,它与第二种(插入两位字符串)不同之处仅在于:如果插入的是一位数字0,则表示的是0000,而不是2000年。所以在给YEAR类型赋值时,一定要分清0和‘0’,虽然两者相差个引号,但实际效果确实相差了2000年。
  2. TIME类型
    TIME类型表示为“时:分:秒”,尽管小时范围一般是0~23,但是为了表示某些特殊时间间隔,MySQL将TIME的小时范围扩发了,而且支持负值。
    对TIME类型赋值,标准格式是‘HH:MM:SS’,但不一定非要是这种格式。
    如果插入的是‘D HH:MM:SS’格式,则类似插入了‘(D*24+HH):MM:SS’。比如插入‘2 23:50:50’,相当于插入了‘71:50:50’。
    如果插入的是‘HH:MM’或‘SS’格式,则效果是其他未被表示位的值赋为零值。比如插入‘30’,相当于插入了‘00:00:30’;如果插入‘11:25’,相当于插入了‘11:25:00’。
    另外也可以插入‘D HH’和‘D HH:MM’,效果按上面的例子可以推理出来了吧。
    在MySQl中,对于'HHMMSS'格式,系统能够自动转化为标准格式。
    如果我们想插入当前系统的时间,则可以插入CURRENT_TIME或者NOW()。TIME类型只占3个字节,如果只是存储时间数据,它最合适了。
  3. DATE类型
    MySQL是以YYYY-MM-DD格式来显示DATE类型的值,插入数据时,数据可以保持这种格式。另外,MySQL还支持一些不严格的语法格式,分隔符“-”可以用“@”、“.”等众多富豪来替代。
    在插入数据时,也可以使用“YY-MM-DD”格式,YY转化成对应的年份的规则与YEAR类型类似。
    如果我们想插入当前系统的时间,则可以插入CURRENT_DATE或者NOW()。
  4. DATETIME类型
    标准格式为“YYYY-MM-DD HH:MM:SS”,具体赋值方法与上面各种类型的方法相似。
  5. TIMESTAMP类型
    TIMESTAMP的取值范围比较小,没有DATETIME的取值范围大,因此输入值时一定要保证在TIMESTAMP的范围之内。它的插入也与插入其他日期和时间数据类型类似。
    那么TIMESTAMP类型如何插入当前时间?第一,可以使用CURRENT_TIMESTAMP;第二,输入NULL,系统自动输入当前的TIMESTAMP;第三,无任何输入,系统自动输入当前的TIMESTAMP。
    另外有很特殊的一点:TIMESTAMP的数值是与时区相关。

转载于:https://www.cnblogs.com/kenshinobiy/p/7358579.html

MySQL的五种日期和时间类型相关推荐

  1. MySQL中的日期和时间类型

    文章目录 1 MySQL中的日期和时间类型 1 MySQL中的日期和时间类型 日期与时间类型是为了方便在数据库中存储日期和时间而设计的,数据库有多种表示日期和时间的数据类型.其中,YEAR类型表示年, ...

  2. MySQL类型定义 - 日期和时间类型

    日期和时间类型 日期与时间类型是为了方便在数据库中存储日期和时间而设计的,数据库有多种表示日期和时间的数据类型.其中,YEAR类型表示年,DATE类型表示日期,TIME类型表示时间,DATETIME和 ...

  3. mysql临时数据类型date_MySQL 数据类型优化 (三:日期和时间类型) | 剑花烟雨江南...

    MySQL 可以使用许多类型来保存日期和时间值,例如 YEAR 和 DATE. MYSQL 能存储的最小时间粒度为秒.但是 MySQL 也可以使用微秒级的粒度进行临时运算. MySQL 提供两种相似的 ...

  4. mysql日期和时间类型_MySQL日期和时间类型

    MySQL中存储日和和时间,使用日期和时间类型. 提供的包括YEAR.DATE.TIME.DATETIME和TIMESTAMP. YEAR 占用:1字节 取值范围:1901~2155 日期格式:YYY ...

  5. MySQL日期和时间类型

    MySQL中存储日和和时间,使用日期和时间类型. 提供的包括YEAR.DATE.TIME.DATETIME和TIMESTAMP. YEAR 占用:1字节 取值范围:1901~2155 日期格式:YYY ...

  6. MySQL学习(十六):数据类型之日期与时间类型

    数据类型之日期与时间类型 日期与时间是重要的信息,在我们的系统中,几乎所有的数据表都用得到.原因是客户需要知道数据的时间标签,从而进行数据查询.统计和处理. 类型 名称 字节 日期格式 最小值 最大值 ...

  7. 【mysql】日期与时间类型

    文章目录 日期与时间类型 1. YEAR类型 2. DATE类型 3. TIME类型 4. DATETIME类型 5. TIMESTAMP类型 6. 开发中经验 日期与时间类型 日期与时间是重要的信息 ...

  8. mysql 创建时间类型,MySQL日期和时间类型

    搜索热词 MysqL中存储日和和时间,使用日期和时间类型. 提供的包括YEAR.DATE.TIME.DATETIME和TIMESTAMP. YEAR 占用:1字节 取值范围:1901~2155 日期格 ...

  9. MySQL DTAETIME、TIMESTAMP、DATE、TIME、YEAR(日期和时间类型)

    MySQL 中有多处表示日期的数据类型:YEAR.TIME.DATE.DTAETIME.TIMESTAMP.当只记录年信息的时候,可以只使用 YEAR 类型. 每一个类型都有合法的取值范围,当指定确定 ...

最新文章

  1. java 参数 string_关于Java中String类型的参数传递问题
  2. Mysql(4)——数据库相关操作
  3. CodeForces - 1208E Let Them Slide(模拟+multiset)
  4. C++学习笔记:(三)静态与名字空间
  5. 使用Hybris的customer conpon进行促销活动(promotion)
  6. 在WPF中处理Windows消息
  7. android 检查 write_external_storage,android – 如何知道何时需要WRITE_EXTERNAL_STORAGE
  8. “弃用 Google AMP!”
  9. mysql的储存原理_mysql储存原理
  10. 图像处理4:最大类间方差法(大津法)
  11. java公路中轴_技术帖 自行车中轴的种类 入门车友请细读
  12. ubuntu 8.04下安装yEd
  13. css之3D旋转讲解
  14. PMP备考错题集-强化习题三
  15. python 字符串结束符_python字符串以反斜杠结尾
  16. android authority root galaxy s5,三星G9006v (Galaxy S5 联通4G)一键ROOT教程,看教程秒懂ROOT...
  17. 北方民族大学计算机考研资料汇总
  18. MT6572M不支持导出720P视频
  19. 2月第三周域名主机网站排名TOP15 中国万网居首
  20. 怎么做动图?轻松在线制作gif动图的技巧

热门文章

  1. mysql添加外键约束的两种方式(重要)
  2. App流量测试--使用安卓自身提供的TCP收发长度统计功能
  3. 前后端分离之权限验证
  4. centos6.8安装httpd后无法访问
  5. 解决“chrome adobe flash player不是最新版本”的方法
  6. 一个用php抓取网页中电子邮箱的实例
  7. 关于mousemove和scroll事件的一点技巧
  8. 用Flex绘制带Icon的Tooltip
  9. zookeeper下载地址及常见配置项
  10. element-ui表单校验