首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【重学 MySQL】五十七、日期与时间类型

从MySQL5.5.27开始,2位格式的YEAR已经不推荐使用。...YEAR默认格式就是YYYY,没必要写成YEAR(4),从MySQL 8.0.19开始,不推荐使用指定显示宽度的YEAR(4)数据类型。 TIME类型 用途:用于存储时间,不包含日期部分。...如果使用带有D格式的字符串插入TIME类型的字段时,D会被转化为小时,计算格式为D*24+HH。...插入格式: 可以使用YYYY-MM-DD或YYYYMMDD格式的字符串。 可以使用YY-MM-DD或YYMMDD格式的字符串,其中YY表示两位的年值,MySQL会根据规则将其转换为4位年份。...可以使用YY-MM-DD HH:MM:SS或YYMMDDHHMMSS格式的字符串,其中YY表示两位的年值。 MySQL允许“不严格”语法,任何标点符号都可用作日期部分或时间部分之间的间隔符。

15010
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL数据库应用总结(六)—MySQL数据库的数据类型和运算符(上)

    ,格式n】from 表名;】 详解: 一 MySQL数据类型介绍 MySQL支持多种数据类型,主要有数值类型、日期类型、时间类型和字符串类型。...1 整数类型 数据类型主要用来存储数字,MySQL提供多种可供选择的整数类型,用整数作为数据类型的字段可以设置auto_increment自增约束条件。...00~69转换为2000~2069;70~99转换为1970~1999; 以2位数字表示的YEAR值,范围为1~99。...1~69值是2001~2069;70~99范围值转换为1970~1999,而在这里0值被转换为0000; 案例 创建数据表tb_temp3,定义字段类型为YEAR的字段y,向表中插入数值2017,'2017...D表示日,可以取0~34之间的值。在插入数据库时D被转换为小时保存(D*24+HH)。 'HHMMSS'格式的数值,会自动分成HH:MM:SS但各自有取值范围,超过则输入不合法。

    3.2K50

    你以为你真的了解MySQL中的数据类型吗?这里保证有你不会的!

    本文将详细介绍MySQL中的数据类型,包括数值类型、日期和时间类型、字符串类型等,并通过Markdown格式的表格进行展示。 数值类型 数值类型用于存储数值数据,包括整数类型和浮点数类型。...但是,如果插入的数值超过5位,它仍然会被正常存储,只是不会再填充0。需要注意的是,从MySQL 8.0.17开始,不推荐使用显示宽度属性。...CURTIME()函数返回当前时间,不包括日期部分。 NOW()函数返回当前的日期和时间。 DATE_ADD()函数在指定日期上增加指定的时间间隔,这里是在当前日期上增加7天。...(HEX_TO_BIN('53616D75656C')); -- 'Samuel'的ASCII码的十六进制表示,转换为二进制存储 -- 查询表格中的所有数据(使用HEX函数将二进制数据转换回十六进制字符串以便显示...data字段使用VARBINARY(255)类型,表示可变长度的二进制数据,最大长度为255字节。 插入数据时,我们直接使用BINARY关键字将字符串转换为二进制数据。

    13110

    【小家SQL】MySql数据类型---日期时间类型的使用(含datetime和timestamp的区别) 0000-00-00 00:00:00问题解释

    虽然,小时的范围是0~~23,但是为了表示某种特殊需要的时间间隔,将Time类型的范围扩大了。而且还支持了负值。...MySQL中还支持一些不严格的语法格式,任何标点都可以用来做间隔符。如’YYYY/MM/DD‘,’YYYY@MM@DD‘,’YYYY.MM.DD‘等分隔形式。...举个例子,输入’2011.3.8‘,date类型将转换为2011-03-08。...这种方式可以表达的范围是‘1000-01-01 00:00:00’~~‘9999-12-31 23:59:59’。 MySQL中还支持一些不严格的语法格式,任何的标点都可以用来做间隔符。...`test` (`id`, `a`) VALUES ('3', current_timestamp()); 从数据库显示的结果来看,timestamp的范围确实很小的,2069明显的超过了2038,所以数据库插入

    7.3K20

    MySQL 常用函数汇总

    concat 合并字符串函数,返回结果为连接参数产生的字符串,参数可以使一个或多个 insert 替换字符串函数 lower 将字符串中的字母转换为小写 upper 将字符串中的字母转换为大写 left...sysdate 两个函数作用相同,返回当前系统的日期和时间值 unix_timestamp 获取 unix 时间戳函数,返回一个以 unix 时间戳为基础的无符号整数 from_unixtime 将...1 ~ 366 dayofmonth 获取指定日期是一个月中是第几天,返回值范围是 1 ~ 31 year 获取年份,返回值范围是 1970 〜 2069 time_to_sec 将时间参数转换为秒数...sec_to_time 将秒数转换为时间,与 time_to_sec 互为反函数 date_add 和 adddate 两个函数功能相同,都是向日期添加指定的时间间隔 date_sub 和 subdate...两个函数功能相同,都是向日期减去指定的时间间隔 addtime 时间加法运算,在原始时间上添加指定的时间 subtime 时间减法运算,在原始时间上减去指定的时间 datediff 获取两个日期之间间隔

    2.3K21

    玩转Mysql系列 - 第10篇:常用的几十个函数详解

    lower 将字符串中的字母转换为小写 upper 将字符串中的字母转换为大写 left 从左侧字截取符串,返回字符串左边的若干个字符 right 从右侧字截取符串,返回字符串右边的若干个字符 trim...没有len参数的形式是字符串str从位置pos开始返回一个子字符串。 带有len参数的形式是字符串str从位置pos开始返回长度为len的子字符串。 使用FROM的形式是标准的SQL语法。...将 UNIX 时间戳转换为时间格式,与UNIX_TIMESTAMP互为反函数 month 获取指定日期中的月份 monthname 获取指定日期中的月份英文名称 dayname 获取指定曰期对应的星期几的英文名称...sec_to_time 将秒数转换为时间,与TIME_TO_SEC 互为反函数 date_add 和 adddate 两个函数功能相同,都是向日期添加指定的时间间隔 date_sub 和 subdate...两个函数功能相同,都是向日期减去指定的时间间隔 addtime 时间加法运算,在原始时间上添加指定的时间 subtime 时间减法运算,在原始时间上减去指定的时间 datediff 获取两个日期之间间隔

    3.1K21

    MySQL基础SQL编程学习2

    ---- 0x01 SQL 基础函数 描述:SQL 拥有很多可用于计数和计算的内建函数,可以帮助我们更方便的存储以及获取数据; Date 函数 描述:在处理日期的时候我们需要确保所插入的日期的格式,与数据库中日期列的格式相匹配...() 从日期减去指定的时间间隔 DATE_SUB(date,INTERVAL expr type) DATEDIFF() 返回两个日期之间的天数 DATEDIFF(date1,date2) DATE_FORMAT...DATEPART() 返回日期/时间的单独部分 DATEADD() 在日期中添加或减去指定的时间间隔 DATEDIFF() 返回两个日期之间的时间 CONVERT() 用不同的格式显示日期/时间 MSSQL...<=1; -- ORACLE -- ROUND() 函数示例 mysql> select ROUND(-1.23); -- -1 返回参数X的四舍五入的一个整数 mysql> select ROUND...UCASE() - 将某个字段转换为大写 LCASE() - 将某个字段转换为小写 MID() - 从某个文本字段提取字符( MySQL - SELECT MID(column_name,start[,

    7.3K30

    mysql和sqlserver区别_一定和必须的区别

    DATE() 提取日期或日期/时间表达式的日期部分 EXTRACT() 返回日期/时间按的单独部分 DATE_ADD() 给日期添加指定的时间间隔 DATE_SUB() 从日期减去指定的时间间隔 DATEDIFF...DATEADD() 在日期中添加或减去指定的时间间隔 DATEDIFF() 返回两个日期之间的时间 CONVERT() 用不同的格式显示日期/时间 4.2 Date 数据类型 MySQL 使用下列数据类型在数据库中存储日期或日期...比指定类型支持的最大范围大的值将被自动截短。 日期和时间类型   在处理日期和时间类型的值时,MySQL 带有 5 个不同的数据类型可供选择。...MySQL 试图将 2 个数字的年份转换为 4 个数字的值。把在 00-69 范围内的值转换到 2000-2069 范围内。把 70-99 范围内的值转换到 1970-1979 之内。...SET 类型可以从预定义的集合中取得任意数量的值。并且与 ENUM 类型相同的是任何试图在 SET 类型字段中插入非预定义的值都会使 MySQL 插入一个空字符串。

    3.3K21

    DB2 Vs MySQL系列 | MySQL与DB2的数据类型对比

    DB2 V9/V10支持数据类型总览 DB2数据类型转换为MySQL数据类型,原则上可以分为三大类,在实际转换过程建议遵从以下转换规则进行转换: 数值字段类型(Numeric) DB2数据库和MySQL...日期时间字段类型(Date &Time) MySQL支持的日期时间类型(Datetime/Date/Timestamp/Time/Year)比DB2支持的(Date/Timestamp/Time)更丰富...24小时),而且可以代表某个数据库事件消耗的时间或者两个事件之间的时间间隔(可能大于24小时,甚至为负值)。...DB2中该Time类型指一天中的时间,因此取值范围只能是从“00:00:00”到“23:59:59”。 其他 MySQL中除了上述三种日期时间类型外,还有Datetime和Year两种特有的时间类型。...为了方便比对,将两种数据库的数据类型总结如下图所示: ? ?

    3K60

    MySQL常用指令

    下面的例子可以从db1数据库访问作者表,并从db2数据库访问编辑表: mysql> USE db1; mysql> SELECT author_name,editor_name FROM author,...2、将NAME设为长度为10的字符字段 3、将ADDRESS设为长度50的字符字段,而且缺省值为北京。 4、将YEAR设为日期字段。...,从1开始,未找到返回0 select locate('爱','我爱中国'); -- 2 select locate('爱我','我爱中国'); -- 0 lower 作用:将所有字母转换为小写 select...为周一,6为周日 select weekday('2021-10-16'); -- 0:周一 select weekday('2021-10-16'); -- 6:周日 datediff 作用:计算两个日期间的间隔天数...(); 系统函数 cast(src as target) 作用:将数据转换为指定类型 target取值如下: 二进制:binary 字符型:char() 日期:date 时间:time 日期时间型:datetime

    1.7K20

    MySQL常用函数解读:从基础到进阶的全方位指南

    SUBDATE(date, INTERVAL expr unit) 或 DATE_SUB(date, INTERVAL expr unit) 功能:从日期减去一个时间间隔。...TIMESTAMP(expr, expr) 功能:将一个日期或时间表达式转换为时间戳。...TO_DAYS(date) 功能:返回日期从年份0开始的天数。 FROM_DAYS(days) 功能:将天数转换为日期。...MySQL本身不支持时区感知的时间戳,但某些其他数据库系统可能有这样的功能。 CONVERT_TZ(dt, from_tz, to_tz) 功能:将日期时间值从一个时区转换为另一个时区。...这个函数主要用于理解MySQL内部如何格式化日期和时间,但在实际应用中较少使用。 ADDTIME(expr1, expr2) 功能:将时间值加到另一个时间值上。这通常用于给时间加上一个时间间隔。

    31310

    一场pandas与SQL的巅峰大战(三)

    在前两篇文章中,我们从多个角度,由浅入深,对比了pandas和SQL在数据处理方面常见的一些操作。...在pandas中,我们看一下如何将str_timestamp列转换为原来的ts列。这里依然采用time模块中的方法来实现。 ?...Mysql和Hive中unix_timestamp接收的参数不一样,前者必须输入为整数,后者可以为字符串。我们的目标是输入一个8位的时间字符串,输出一个10位的时间字符串。...日期计算 日期计算主要包括日期间隔(加减一个数变为另一个日期)和计算两个日期之间的差值。 1.日期间隔 pandas中对于日期间隔的计算需要借助datetime 模块。...使用timedelta函数既可以实现天为单位的日期间隔,也可以按周,分钟,秒等进行计算。 在MySQL和Hive中有相应的日期间隔函数date_add,date_sub函数,但使用的格式略有差异。

    4.5K20

    SQL笔记(3)——MySQL数据类型

    DATE类型支持的日期范围从’1000-01-01’到’9999-12-31’,并且使用4字节的存储空间。 可以通过多种方式来插入日期值。...例如: SELECT YEAR(date_field) FROM table; 这条SQL语句将YEAR类型的date_field字段转换为整数形式,以便进行比较和计算。...在MySQL中,将Boolean类型转换为整数时,TRUE会被转换为1,而FALSE会被转换为0。...反过来,将整数转换为Boolean类型时,0会被转换为FALSE,而其他非零值都会被转换为TRUE。 SERIAL MySQL的SERIAL类型是一种整数类型,用于存储自增长的数字序列。...每当向表格中插入一条新记录时,MySQL会自动将SERIAL类型的字段的值自增1,生成一个新的唯一标识,以便将其与其他记录区分开来。而int类型则没有这种自增功能。

    1.8K40

    mysql存储long型数据_int数据类型

    比指定类型支持的最大范围大的值将被自动截短。 日期和时间类型 在处理日期和时间类型的值时,MySQL 带有 5 个不同的数据类型可供选择。它们可以被分成简单的日期、时间类型,和混合日期、时间类型。...MySQL 试图将 2 个数字的年份转换为 4 个数字的值。把在 00-69 范围内的值转换到 2000-2069 范围内。把 70-99 范围内的值转换到 1970-1979 之内。...在处理相互排拆的数据时容易让人理解,比如人类的性别。ENUM 类型字段可以从集合中取得一个值或使用 null 值,除此之外的输入将会使 MySQL 在这个字段中插入一个空字符串。...另外如果插入值的大小写与集合中值的大小写不匹配,MySQL 会自动使用插入值的大小写转换成与集合中大小写一致的值。 ENUM 类型在系统内部可以存储为数字,并且从 1 开始用数字做索引。...SET 类型可以从预定义的集合中取得任意数量的值。并且与 ENUM 类型相同的是任何试图在 SET 类型字段中插入非预定义的值都会使 MySQL 插入一个空字符串。

    3.9K30

    MySQL中的数据类型_js中的数据类型

    从MySQL 8.0.17开始,整数数据类型不推荐使用显示宽度属性。整型数据类型可以在定义表结构时指定所需要的显示宽度,如果不指定,则系统为每一种类型指定默认的宽度值。...所以,如果需要在MySQL数据库中保存非负整数值时,可以将整数类型设置为无符号类型。 int类型默认显示宽度为int(11),无符号int类型默认显示宽度为int(10)。...原因是 MySQL 设计的 TIME 类型,不光表示一天之内的时间,而且可以用来表示一个时间间隔,这个时间间隔可以超过 24 小时。...当取值为01到69时,表示2001到2069; 当取值为70到99时,表示1970到1999; 当取值整数的0或00添加的话,那么是0000年; 当取值是日期/字符串的’0’添加的话,是2000年 从MySQL5.5.27...JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻 松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式。

    6.7K20

    MySQL数据类型--日期时间

    在这一路学习过来,每次不管看书还是网上看的资料,对于MySQL数据类型中的时间日期类型总是一扫而过,不曾停下来认认真真的研究学习。...二、时间日期数据类型总概况    MySQL中有多种表示时间日期的数据类型,主要有YEAR、TIME、DATE、DATETIME、TIMESTAMP等。...b、”HHMMSS“没间隔的字符串格式或者HHMMSS没间隔的数字格式,非严格语法插入可以为,MMSS、SS、”MMSS“等等。...要注意的是:1、这两种插入格式采用非严格语法的时候(即为时分秒不完整,只有时分等等),最右边的数据将默认为秒数,例如插入2318时,最终入库为002318。 ...插入格式也有多种。 常见插入格式解析:   与DATETIME一致,可以参考上面。 四、小结   了解MySQL的日期时间数据类型对于选取一种适合存储类型是很有必要的。

    3.3K20

    MySQL从删库到跑路(三)——SQL语言

    比指定类型支持的最大范围大的值将被自动截短。 3、日期和时间类型 在处理日期和时间类型的值时,MySQL带有5个不同的数据类型可供选择。分为简单日期、时间类型,混合日期、时间类型。...MySQL还对日期的年份中的两个数字的值,或是SQL语句中为YEAR类型输入的两个数字进行最大限度的通译。因为所有YEAR类型的值必须用4个数字存储。MySQL试图将2个数字的年份转换为4个数字的值。...ENUM类型字段可以从集合中取得一个值或使用null值,如果输入不在集合中的值将会使MySQL插入一个空字符串。...另外如果插入值的大小写与集合中值的大小写不匹配,MySQL会自动使用插入值的大小写转换成与集合中大小写一致的值。 ENUM类型在系统内部可以存储为数字,并且从1开始用数字做索引。...SET类型 SET类型可以从预定义的集合中取得任意数量的值,任何试图在SET类型字段中插入非预定义的值都会使MySQL插入一个空字符串。

    1.8K30

    关于日期及时间字段的查询

    NOW() 和 SYSDATE() 两个函数作用相同,返回当前系统的日期和时间值。 UNIX_TIMESTAMP 获取UNIX时间戳函数,返回一个以 UNIX 时间戳为基础的无符号整数。...FROM_UNIXTIME 将 UNIX 时间戳转换为时间格式,与UNIX_TIMESTAMP互为反函数。 TO_DAYS() 提取日期值并返回自公元0年到现在的天数。...DATE_ADD 和 ADDDATE 两个函数功能相同,都是向日期添加指定的时间间隔。 DATE_SUB 和 SUBDATE 两个函数功能相同,都是向日期减去指定的时间间隔。...DATEDIFF 获取两个日期之间间隔,返回参数 1 减去参数 2 的值。 DATE_FORMAT 格式化指定的日期,根据参数返回指定格式的值。...有时候这类需求多种多样,下面我们来学习下关于日期和时间字段的查询写法。 首先,为了使查询更加准确,在插入数据时也要按规范来插入。

    7K40
    领券