MySQL学习笔记|日期和时间(一)

MySQL有五种日期和时间数据类型:DATE、DATETIME、TIMESTAMP、TIME和YEAR。
本文详细介绍了这五种数据类型的格式和表示特征。
1.DATE数据类型用于表示不带时间部分的日期值,支持的范围是'1000-01-01'到'9999-12-31'。
主要有以下三种表达格式:1.1.1'YYYY-MM-DD'或'YY-MM-DD'(字符串表示)这可以使用任何标点符号作为分隔符。
最常用的是“-”,例如“2021-12-01”、“2021”和“21^12^01”。
请注意,这种松散的语法可能具有欺骗性。
例如,“21:12:01”看起来像TIME类型,但在DATE上下文中使用时,它被识别为“2021-12-01”。
对于带分隔符的字符串,可以准确识别小于10位的月份或日期。
例如,“2021-01-01”和“2021-1-1”是等效的。
1.1.2'YYYYMMDD'或'YYMMDD'(字符串表示)没有分隔符的字符串只要作为日期有意义,就可以被识别为DATE类型。
例如,“20211201”或“211201”被识别为“2021-12-01”。
但是,像“211331”这样的表达式无法正确识别,因为月份和日期部分无效,MySQL会自动将其转换为“0000-00-00”。
要从左到右搜索年、月、日,必须使用至少6位数字的字符串。
例如,如果想用“2101”来表示2021年1月,那么年和月的值分别是21和01,但是日部分完全丢失了,所以MySQL会将其写为“0000-00-00”。
”。
1.1.3YYYYMMDD或YYMMDD(数字表示)如果数字作为日期有意义,则可以将其识别为DATE类型。
本例与1.1.2类似。
如果数字长度为8位,则假定为YYYYMMDD格式,前4位指定年份。
如果数字长度为6位,则假定采用YYMMDD格式并指定年份。
由前两位数字指定。
不属于这些长度之一的数字将使用前导零填充到最接近的长度。
例如,11111被识别为“2001-11-11”。
服务器要求月份和日期值不仅要分别在1-12和1-31范围内,而且要有效。
禁用严格模式会将“2021-02-30”转换为无效日期“0000-00-00”并生成警告。
如果启用严格模式,无效日期将生成错误。
2.DATETIME和TIMESTAMP数据类型都是日期和时间的组合。
两种类型的值都可以包含尾随小数秒,精度高达微秒(6位数字)。
小数部分必须始终用小数点与其余部分分隔;不识别其他分隔符。
2.1.1主要有三种表示格式:“YYYY-MM-DDhh:mm:ss”或“YY-MM-DDhh:mm:ss”(字符串表示)。
与DATE一样,它具有宽松的语法和标点符号。
可用作分隔符。
最常用的日期部分是“-”,最常用的时间部分是“:”。
日期和时间部分可以使用不同的分隔符,例如“2021^12^0116$01$01”。
对于带有分隔符的字符串,用单个数字10表示目的是系统记录学习时对日期时间数据类型的理解和注意事项,帮助解决日常工作中遇到的与时间相关的问题。
如果信息有误或需要澄清,请通过留言或私信告知我们。
感谢您的关注和支持!

mysql查询日期到日期之间的如何查询?

相对而言,数据库用于存储大量实时数据,例如天气模式、交通状况、人口趋势等。
企业通常记录订单日期、履行日期、员工日期等。
MySQL使用标准固定格式yyyy-mm-dd来收集日期值。
然而您更喜欢mm-dd-yyyy格式,MySQL不允许更改它。
但在表示层中,就像在边表中一样,数据显示的格式可以通过DATE_FORMAT函数来实现。
接下来,我们将在MySQL中查找类型。
MySQL提供了五种日期和时间类型。
本文将详细介绍前三个:DATE、TIME和DATETIME。
下面详细解释每种类型,并提供示例来演示其应用。
DATE类型使用3个字节来存储从1000-01-01到9999-12-31的值。
如果在禁用严格模式时输入无效日期,例如2015-02-30,MySQL会自动将其转换为值0000-00-00。
在Navicat16中,可以通过指示符菜单的“类型”下拉菜单选择DATE类型。
要设置DATE值,可以使用默认控件或直接在insert语句中输入。
输入TIME并以“HH:MM:SS”格式显示一天24小时内的时间值。
表示时间间隔时,“HHH:MM:SS”格式大于24小时。
Navicat16在下拉列表中提供了TIME类型“Type”,并通过TIMEINPUT控件来设置值。
以下是设置开始时间和结束时间的插入语句示例。
DATA类型用于存储日期和时间。
默认范围为1000-01-0100:00:00到9999-12-3123:59:59。
当查询DATE值时,MySQL以相同的YYYY-MM-DDHH:MM:SS格式显示它们。
DATETIME值存储在5个字节中,并且可以包含尾随秒小数部分。
在Navicat16中,DATETIME类结合了日期和时间控件,为输入值提供了便利。
设置DATETIME值,可以使用包含“T”描述符的时间部分的字符串文字,也可以将其转换为DATETIME。
看完了DATE、TIME和DATETIME,下一章将介绍剩下的两种类型:TIME和YEAR。
一旦你对MySQL的时间和特性有了深入的了解,你就可以将其用于Navicat16了。
如果您想下载第14天的试用版,请访问指定链接。