mysql—mysql中如何存储日期数据

mysql—mysql中如何存储日期数据

一.DateTime类型

1,特点
1)以YYYY-MM-DD HH:MM:SS[.fraction]格式存储日期时间,在mysql5.6前可以只能存储到秒,在5.6后能存储到微秒
2)datetime类型与时区无关,占用8个字节的存储空间
3)时间范围公元1000-01-01 00:00:00到9999-12-31 23:59:59,存储的时间范围非常广

二.timestamp类型

1.特点:

1)存储了由格林尼治时间1970年1月1日到当前时间的秒数,即时间戳, 以YYYY-MM-DD HH:MM:SS.[.fraction]的格式显示,占用4个字节,实际上是以int类型来存储的
2)时间范围1970-01-01到2038-01-19
3)timestamp类型显示依赖于所指定的时区
4)在行的数据修改时可以自动修改timestamp列的值 ,这个功能非常的有用,在本行的任何数据被修改时,都会自动修改这个时间,经常使用这个功能来标识每行最后被修改的时间,需要注意的是,如果一张表中有两个列是timestamp,那默认情况下只有第一列会自动更新,其他列不会

三.演示

1.关于时区的区别

1)首先在一张表中,存储两个列的值,第一列是datetime类型,第二列是timestamp类型,用相同时区存进去
在这里插入图片描述
2)修改当前数据库的时区,再次查询

在这里插入图片描述
3)结论:第一列的时间没有随着时区的变化而变化,第二列就变了,说明datetime与时区无关,timestamp会随着时区的变化而变化

四.date类型

1.特点

1)只能存储日期,不能存储时间
2)占用的字节数比使用字符串(8个字节),datetime(8个字节),int(4个字节) 存储要少,使用date类型只需要3个字节
3)使用date类型还可以利用日期时间函数进行日期之间的计算
4)存储的时间范围:公元1000-01-01到9999-12-31之间的日期

五.time类型

用于存储时间的数据,格式为HH:MM:SS

六.注意事项

1.不要使用字符串类型来存储日期时间的数据

理由:
1)日期时间类型通常比字符串占用的存储空间小
2)日期时间类型在进行查找过滤时可以利用日期来进行对比
3)日期时间类型还有着丰富的处理函数,可以方便的对日期类型进行日期的计算

2.使用int存储日期时间不如使用timestamp类型,使用时更加方便,无需转换

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2341.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • fleck 客户端_用 Fleck 实现 websocket 通信[通俗易懂]

    fleck 客户端_用 Fleck 实现 websocket 通信[通俗易懂]usingDevExpress.XtraBars.Ribbon;usingFleck;usingIMS.DBHelper;usingSystem;usingSystem.Collections.Generic;usingSystem.Data;usingSystem.Linq;usingSystem.Windows.Forms;usingWHC.Framework.Commons;usingRfi…

    2025年7月16日
    5
  • TabNine的Pro激活码【中文破解版】

    (TabNine的Pro激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年4月2日
    66
  • idea怎么搭建springboot(搭建服务器教程)

    一、创建项目1.File->new->project;2.选择“SpringInitializr”,点击next;(jdk1.8默认即可)3.完善项目信息,组名可不做修改,项目名可做修改;最终建的项目名为:test,src->main->java下包名会是:com->example->test;点击next;4.Web下勾选Spri…

    2022年4月18日
    52
  • R语言本地安装包教程

    R语言本地安装包教程第一步从R语言官网,下载package:‘Hmisc’,‘data.table’,‘UsingR’。以’data.table’为例,如图,其他两个方法相同。第二步下载好包到本地后,别忘了下载到哪了.然后在R软件选择-程序包-installpackagefromlocalfiles,选择下载好的’data.table’文件;然后选择-程序包-加载程序包-selecton…

    2022年6月27日
    189
  • idea git 使用(idea开发工具怎么使用)

    简介以下会介绍Git在IDEA中的使用,包含大多数的开发场景,这里是用Github做远程仓库,假设小组中有两个人,队长A,和队员B场景一:队长A创建项目并提交到远程Git仓库场景二:队员B从远程Git仓库上获取项目源码场景三:队员B修改了部分源码,提交到远程仓库场景四:队长A从远程仓库获取队员B的提交场景五:队员B接受了一个新功能的任务,创建了一个分支并在分支上开发场景六:队员B把…

    2022年4月17日
    53
  • 微型计算机的字节取决于什么的宽度,计算机字长取决于什么的长度[通俗易懂]

    微型计算机的字节取决于什么的宽度,计算机字长取决于什么的长度[通俗易懂]满意答案ajpno2013.03.28采纳率:44%等级:12已帮助:10279人计算机的字长取决于数据总线的宽度.字长是指计算机内部参与运算的数的位数。它决定着计算机内部寄存器、ALU和数据总线的位数,直接影响着机器的硬件规模和造价。字长直接反映了一台计算机的计算精度,为适应不同的要求及协调运算精度和硬件造价间的关系,大多数计算机均支持变字长运算,即机内可实现半字长、全字长(或单字长)和…

    2022年6月28日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号