广告
返回顶部
首页 > 资讯 > 数据库 >MySQL中的日期时间类型与格式化方式
  • 666
分享到

MySQL中的日期时间类型与格式化方式

MySQL日期时间类型MySQL日期格式化时间日期类型 2022-07-04 17:07:07 666人浏览 泡泡鱼
摘要

目录【1】Mysql中的日期时间类型① 详细解释② sql语句实例③ timestamp字段④ 测试实例【2】日期时间类型格式化 ① DATE_FORMAT( )函数② date_format( ) 转换格式③ str_

【1】mysql中的日期时间类型

MySQL中常用的几种时间类型有:date、datetime、time、year、timestamp

数据类型占用字节最小值最大值零值表示
date41000-01-019999-12-310000-00-00
datetime81000-01-01 00:00:009999-12-31 23:59:590000-00-00 00:00: 00
timestamp4197001010800012038年的某个时刻0000000000000000
time3-838:59:59838:59:5900:00:00
year1190121550000

① 详细解释

  • 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。

两位year(00-69表示2000-2069,70-99表示1970~1999)。当应用只需要记录年份时,year比date更省空间

② SQL语句实例

create table my_date(
	d1 datetime,
	d2 date,
	d3 time,
	d4 timestamp,
	d5 year
)charset utf8;
desc my_date

如下图所示:year默认为4位,即YYYY; timestamp不能为空,有默认值,在创建新记录和修改现有记录的时候都对这个数据列刷新。

MySQL中的日期时间类型与格式化方式

如下分别插入几条数据并对time做差异分析:

insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','11:50:54','2015-09-28 11:51:08','2015');
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','-11:50:54','2015-09-28 11:51:08','2015');-- -11
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','-211:50:54','2015-09-28 11:51:08','2015');-- -2 11
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','-2 11:50:54','2015-09-28 11:51:08','2015');-- -2过去两天
#year用69标识-2069
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','11:50:54','2015-09-28 11:51:08','69');-- 69
#year用70标识-1970
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','11:50:54','2015-09-28 11:51:08','70');-- 70

MySQL中的日期时间类型与格式化方式

MySQL中的日期时间类型与格式化方式

③ timestamp字段

默认情况下只要当前所在的记录被更新,该字段一定会自动更新成当前时间。

update my_date set d1 = SYSDATE() where d5=69;
select * from my_date

MySQL中的日期时间类型与格式化方式

那么MySQL可以拿到真正的时间戳吗?当然可以!

select UNIX_TIMESTAMP();

MySQL中的日期时间类型与格式化方式

④ 测试实例

4.1 查询当前时间

SELECT SYSDATE() from dual;

MySQL中的日期时间类型与格式化方式

4.2 将当前时间插入以上几种类型列中

insert INTO `user` (name,number,date,datetime,timestamp,time,year)
VALUES (
'Loum',3,SYSDATE(),SYSDATE(),SYSDATE(),SYSDATE(),2016
);

MySQL中的日期时间类型与格式化方式

4.3 mysql中datetime类型的长度位数

如下所示,通常我们MySQL中设计datetime类型长度都默认为0:

`work_time` datetime(0) DEFAULT NULL COMMENT '清收时间',

这时插入时间通常会是我们常见到的:2020-08-29 12:52:16格式。但是如果datetime(n)中的n不为0呢?

`work_time` datetime(2) DEFAULT NULL COMMENT '清收时间',
# datetime(n)中的n最大值为6
`work_time` datetime(6) DEFAULT NULL COMMENT '清收时间',

这时在MySQL中会分别显示如下:

2020-08-29 12:52:16.01
2020-08-29 12:52:16.014057

会发现最后有一个小数点且小数点后面会分别对应相应位数的数字–这称之为纳秒。

总结如下:

  • date : 只有日期,没有时间;
  • datetime:有时间,有日期;
  • time:只有时间 ,精确到分秒 ;
  • timestamp:时间戳,精确到分秒;
  • year:年,如2002,如果写为 2002-01-15,将会进行计算,插入结果为1986

【2】日期时间类型格式化 ① DATE_FORMAT( )函数

可以使用date_format( )函数进行时间的转换。

SELECT DATE_FORMAT(SYSDATE(),'%Y-%m-%d %H:%i:%s') from dual;

MySQL中的日期时间类型与格式化方式

② date_format( ) 转换格式

格式描述
%a缩写星期名
%b缩写月名
%c月,数值
%D带有英文前缀的月中的天
%d月的天,数值(00-31)
%e月的天,数值(0-31)
%f微秒
%H小时 (00-23)
%h小时 (01-12)
%I小时 (01-12)
%i分钟,数值(00-59)
%j年的天 (001-366)
%k小时 (0-23)
%l小时 (1-12)
%M月名
%m月,数值(00-12)
%pAM 或 PM
%r时间,12-小时(hh:mm:ss AM 或 PM)
%S秒(00-59)
%s秒(00-59)
%T时间, 24-小时 (hh:mm:ss)
%U周 (00-53) 星期日是一周的第一天
%u周 (00-53) 星期一是一周的第一天
%V周 (01-53) 星期日是一周的第一天,与 %X 使用
%v周 (01-53) 星期一是一周的第一天,与 %x 使用
%W星期名
%w周的天 (0=星期日, 6=星期六)
%X年,其中的星期日是周的第一天,4 位,与 %V 使用
%x年,其中的星期一是周的第一天,4 位,与 %v 使用
%Y年,4 位
%y年,2 位

③ str_to_date()函数

字符串转换为date:

str_to_date(
	'2016-12-15 16:48:40',
	'%Y-%m-%d %H:%i:%S'
)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中的日期时间类型与格式化方式

本文链接: https://www.lsjlt.com/news/33185.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL中的日期时间类型与格式化方式
    目录【1】mysql中的日期时间类型① 详细解释② SQL语句实例③ timestamp字段④ 测试实例【2】日期时间类型格式化 ① DATE_FORMAT( )函数② date_format( ) 转换格式③ str_...
    99+
    2022-07-04
    MySQL日期时间类型 MySQL日期格式化 时间日期类型
  • MySQL中的日期时间类型与格式化方式是什么
    本篇内容介绍了“MySQL中的日期时间类型与格式化方式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2022-10-19
  • Python MySQL 日期时间格式化
    1.我的MySQL中的start_time存储的是2018-03-21 10:55:32格式的时间,我需要按照YYYY-MM-DD格式来查询,我的MySQL中的sql是这样写的:SELECT * from mytable WHER...
    99+
    2023-01-31
    日期 时间 Python
  • MySQL datetime类型与时间、日期格式字符串大小比较的方法
    目录一、前提1、mysql版本信息:2、表字段:二、使用>、<比较1.  日期格式比较:2. 时间格式三、between and1. 日期格式四、总结一、前提 1、MySQL版本信息: MySQL版...
    99+
    2022-11-14
  • JavaScript 日期和时间的格式化方法
    目录JavaScript 日期和时间的格式化一、日期和时间的格式化1、原生方法1.1、使用 toLocaleString 方法1.2、使用 Intl.DateTimeFormat 对...
    99+
    2023-02-18
    js时间格式化 js日期格式化 js日期和时间格式化
  • js日期时间格式化的方法实例
    js日期时间格式化 将日期时间转换为指定格式,如:YYYY-mm-dd HH:MM表示2019-06-06 19:45 function dateFormat(fmt, date...
    99+
    2022-11-12
  • js中时间戳格式化成日期格式的方法有哪些
    这篇文章将为大家详细讲解有关js中时间戳格式化成日期格式的方法有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。js需要把时间戳转为为普通格式,一般的情况下可能用不到的...
    99+
    2022-10-19
  • MySQL日期时间函数汇总、时间格式转换方法
    MySQL日期时间函数汇总、时间格式转换方法 时间函数日期时间格式转换date_format函数EXTRACT()DATE_ADD()DATE_SUB()DATEDIFF函数 时间函数...
    99+
    2023-09-05
    mysql 数据库
  • js中如何实现日期时间格式化
    这篇文章主要为大家展示了“js中如何实现日期时间格式化”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js中如何实现日期时间格式化”这篇文章吧。js日期时间格式化将日期时间转换为指定格式,如:YY...
    99+
    2023-06-20
  • Python MySQL 日期时间格式化作为参数的操作
    我的MySQL中的start_time存储的是2018-03-21 10:55:32格式的时间,我需要按照YYYY-MM-DD格式来查询,我的MySQL中的sql是这样写的: SELECT * from m...
    99+
    2022-05-30
    Python MySQL 日期时间 格式化 参数
  • Java使用DateFormatter格式化日期时间的方法示例
    本文实例讲述了Java使用DateFormatter格式化日期时间的方法。分享给大家供大家参考,具体如下:Java版本:1.8开始import java.time.LocalDate;import java.time.LocalDateTi...
    99+
    2023-05-31
    java dateformatter 日期时间
  • Java中如何对日期时间进行格式化
    这篇文章将为大家详细讲解有关Java中如何对日期时间进行格式化,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Java格式化日期时间的方法import java.text.Parse...
    99+
    2023-05-31
    java ava
  • java8 时间日期的使用与格式化示例代码详解
    目录LocalDateLocalTimeLocalDateTimeInstantDurationPeriodZoneId时间与字符串之间的转化与旧Date API的转换LocalDa...
    99+
    2022-11-13
  • Java格式化日期,时间(三种方法,建议收藏)
    1.String.format() 在java中String类格式化的方法,是静态format()用于创建格式化的字符串。 format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式...
    99+
    2023-08-31
    java
  • Python时间戳与日期格式之间相互转化的详细教程
    目录绪论一、获取当前日期,转为10位或13位时间戳二、将10位或13位时间戳转为日期格式(年-月-日 时-分-秒)总结绪论 java默认精度是毫秒级别的,生成的时间戳是13位,而py...
    99+
    2022-11-11
  • javascript将时间戳转为日期格式的方法
    本篇内容主要讲解“javascript将时间戳转为日期格式的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“javascript将时间戳转为日期格式的方法”吧...
    99+
    2022-10-19
  • 在PHP中如何将时间戳转化为日期和时间格式
    本篇内容介绍了“在PHP中如何将时间戳转化为日期和时间格式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是时间戳时间戳是指自1970年1...
    99+
    2023-07-05
  • Android日期时间格式国际化的实现代码
    在做多语言版本的时候,日期时间的格式话是一个很头疼的事情,幸好Android提供了DateFormate,可以根据指定的语言区域的默认格式来格式化。 直接贴代码: 代码如下:p...
    99+
    2022-06-06
    Android
  • C#如何实现日期时间的格式化输出
    这篇文章主要讲解了“C#如何实现日期时间的格式化输出”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#如何实现日期时间的格式化输出”吧!DateTime被放在System命名空间下,在顶级语...
    99+
    2023-07-05
  • SpringBoot中Jackson日期格式化的方法
    这篇“SpringBoot中Jackson日期格式化的方法”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringBoot...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作