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

用于存储年份的MySQL类型:Smallint或Varchar还是Date?

在选择用于存储年份的MySQL类型时,可以考虑使用Smallint或Varchar类型,也可以考虑使用Date类型。

  1. Smallint类型:

Smallint类型是一个整数类型,范围是-32768到32767。使用Smallint类型存储年份可以节省存储空间,但是在查询时需要进行类型转换,以便更好地进行比较和筛选。

优势:节省存储空间。

应用场景:适用于存储年份的场景,例如记录出版年份、入学年份等。

推荐的腾讯云相关产品:CDN、CVM、CLB、COS、CDB等。

产品介绍链接地址:https://cloud.tencent.com/product/cdb

  1. Varchar类型:

Varchar类型是一个可变长度的字符串类型,最大长度为65535。使用Varchar类型存储年份可以支持未来可能的扩展需求,例如存储更多的年份数据。

优势:灵活扩展。

应用场景:适用于存储年份的场景,例如记录出版年份、入学年份等。

推荐的腾讯云相关产品:CDN、CVM、CLB、COS、CDB等。

产品介绍链接地址:https://cloud.tencent.com/product/cdb

  1. Date类型:

Date类型是一个日期类型,范围是1000-01-01到9999-12-31。使用Date类型存储年份可以方便地进行日期比较和筛选,同时也支持未来可能的扩展需求,例如存储更多的日期数据。

优势:方便日期比较和筛选。

应用场景:适用于存储日期的场景,例如记录出版日期、入学日期等。

推荐的腾讯云相关产品:CDN、CVM、CLB、COS、CDB等。

产品介绍链接地址:https://cloud.tencent.com/product/cdb

综上所述,使用哪种类型存储年份取决于具体的业务需求和场景。如果只需要存储年份,可以选择Smallint或Varchar类型;如果需要进行日期比较和筛选,可以选择Date类型。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

数据库中存储日期字段类型到底应该用varchar还是datetime ?

该字符串未被识别伪有效DateTime        正在做新闻发布系统,数据库中存储时间字段类型为datetime类型,并且字段值都是在服务器端自动获取。...经过测试,如果news.CreateTime在数据库中存储类型varchar(),则不会产生此错误。于是可以知道,这里时间格式转化过程是这样: ?        ...2、将数据库中存储时间数据类型改为varchar(),不过这时最好让这些时间是数据库中自动生成(一个没有格式输入也可能会导致输出错误),因为存储类型varchar(),所以获取到值也就被认为是一个字符串...等,那就麻烦了,尤其实在大型数据查询中转换类型是会影响效率 总结         数据库中存储日期字段类型到底应该用varchar还是datetime ?...在 存储时间将来不需要进行大量计算 前提下,可以考虑选择varchar类型,反之,选择datetime类型

3.8K30

mysql密码字段类型_MySQL 字段类型

(注意,测试前导0时候,还是去黑窗口测试;) 为什么mysql存储值要分有符号和无符号呢?...就不要管它了 字符串类型 MySQL 提供了 8 个基本字符串类型,可以存储范围从简单一个字符到巨大文本块二进制字符串数据。...这些大型数据用于存储文本块图像、声音文件等二进制数据类型。 TEXT 和 BLOB 类型在分类和比较上存在区别。BLOB 类型区分大小写,而 TEXT 不区分大小写。...DATE、TIME 和 YEAR 类型 MySQLDATE 和 YEAR 类型存储简单日期值,使用 TIME 类型存储时间值。这些类型可以描述为字符串不带分隔符整数序列。...MySQL 还对日期年份两个数字值,或是 SQL 语句中为 YEAR 类型输入两个数字进行最大限度通译。因为所有 YEAR 类型值必须用 4 个数字存储

14.4K20
  • Mysql入门(二)

    (注意,测试前导0时候,还是去黑窗口测试;) 为什么mysql存储值要分有符号和无符号呢?...就不要管它了 字符串类型 MySQL 提供了 8 个基本字符串类型,可以存储范围从简单一个字符到巨大文本块二进制字符串数据。...这些大型数据用于存储文本块图像、声音文件等二进制数据类型。 TEXT 和 BLOB 类型在分类和比较上存在区别。BLOB 类型区分大小写,而 TEXT 不区分大小写。...DATE、TIME 和 YEAR 类型 MySQLDATE 和 YEAR 类型存储简单日期值,使用 TIME 类型存储时间值。这些类型可以描述为字符串不带分隔符整数序列。...MySQL 还对日期年份两个数字值,或是 SQL 语句中为 YEAR 类型输入两个数字进行最大限度通译。因为所有 YEAR 类型值必须用 4 个数字存储

    88320

    mysql数据类型有哪几种_数据库 数据类型

    大家好,又见面了,我是你们朋友全栈君。 Mysql支持多种数据类型主要有:数值数据类型、日期/时间类型、字符串类型。...时间/日期类型 字符串类型 blog-二进制大对象,用来存储可变数量数据。 int(11) 在SQL语句中int代表你要创建字段类型,int代表整型,11代表字段长度。  ...显示宽度只用于显示,并不能限制取值范围和占用空间,如:INT(3)会占用4个字节存储空间,并且允许最大值也不会是999,而是 INT整型所允许最大值。...to_char(); str_to_date(date,’%Y-%m-%d %H:%i:%s’) ————–>oracle中to_date(); %Y:代表4位年份 %y:代表2为年份...类型与JAVA类型对应表: 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) VARCHAR L+N VARCHAR java.lang.String 12 CHAR N CHAR

    2.5K30

    mysql 数据类型

    用于比较运算时,这个修饰符使 CHAR 以二进制方式参于运算,而不是以传统区分大小写方式。 CHAR 类型一个变体是 VARCHAR 类型。...这些大型数据用于存储文本块图像、 声音文件等二进制数据类型。 TEXT 和 BLOB 类型在分类和比较上存在区别。BLOB 类型区分大小写,而 TEXT 不区分大小写。...、TIME 和 TEAR 类型   MySQLDATE 和 TEAR 类型存储简单日期值,使用 TIME 类型存储时间值。...这些类型可以描述为字符串不带分隔符整数序列。如果描述为字符串, DATE 类型值应该使用连字号作为分隔符分开,而 TIME 类型值应该使用冒号作为分隔符分开。   ...MySQL 还对日期年份两个数字值,或是 SQL 语句中为 TEAR 类型输入两个数字进行最大限度通译。因为所有 TEAR 类型值必须用 4 个数字存储

    2.7K40

    第12章_MySQL数据类型精讲

    MySQL数据类型 类型 类型举例 整数类型 TINYINT、SMALLINT、MEDIUMINT、INT ( INTEGER)、BIGINT 浮点类型 FLOAT、DOUBLE 定点数类型 DECIMAL...如果设置了显示宽度,那么插入数据宽度超过显示宽度限制,会不会截断插入失败? 答案:不会对插入数据有任何影响,还是按照类型实际宽度进行保存,即 显示宽度与类型可以存储值范围无关 。...SMALLINT :可以用于较小范围统计数据,比如统计工厂固定资产库存数量等。 MEDIUMINT :用于较大整数计算,比如车站每日客流量等。...问题还是出在 MySQL 对浮点类型数据存储方式上。 MySQL 用 4 个字节存储 FLOAT 类型数据,用 8 个字节来存储 DOUBLE 类型数据。无论哪个,都是采用二进制方式来进行存储。...因为 varchar 每次存储都要有额外计算,得到长度等工作,如果一个非常频繁改变,那就要有很多精力用于计算,而这些对于 char 来说是不需要

    34620

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

    字符串类型 MySQL 提供了 8 个基本字符串类型,可以存储范围从简单一个字符到巨大文本块二进制字符串数据。...这些大型数据用于存储文本块图像、声音文件等二进制数据类型。 TEXT 和 BLOB 类型在分类和比较上存在区别。BLOB 类型区分大小写,而 TEXT 不区分大小写。...类型 MySQLDATE 和 TEAR 类型存储简单日期值,使用 TIME 类型存储时间值。...这些类型可以描述为字符串不带分隔符整数序列。如果描述为字符串,DATE 类型值应该使用连字号作为分隔符分开,而 TIME 类型值应该使用冒号作为分隔符分开。...MySQL 还对日期年份两个数字值,或是 SQL 语句中为 TEAR 类型输入两个数字进行最大限度通译。因为所有 TEAR 类型值必须用 4 个数字存储

    3.7K30

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

    SMALLINT SMALLINT 是一种整数数据类型用于存储比 TINYINT 更大但比 INT 更小数据。...YEAR YEAR是一种用于表示年份数据类型,可以存储4位数字格式年份值。YEAR类型占用1个字节存储空间,并且支持年份范围从1901年到2155年。...在MySQL中,YEAR类型通常用于存储只与年份有关数据。例如,可以用YEAR类型来代表一个人出生年份、公司成立年份等等。YEAR类型还可以用于对只涉及年份部分日期进行处理。...需要注意是,当YEAR类型用于存储日期时,其只包含年份信息,不包含月份和日期信息。如果需要同时存储年、月、日完整日期信息,则应使用DATEDATETIME类型。...在MySQL中,VARCHAR和TEXT类型都可以使用这些字符集进行编码。因此,无论是VARCHAR还是TEXT类型,都可以存储包括中文在内任何字符。

    1.7K40

    MySQL创建数据表和MySQL数据类型

    * ENGINE 设置存储引擎,CHARSET 设置编码。 通过命令提示符创建表 通过 mysql> 命令窗口可以很简单创建MySQL数据表。...MySQL 数据类型 MySQL中定义数据字段类型对你数据库优化是非常重要MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。...作为SQL标准扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要每个整数类型存储和范围。...SS 时间值持续时间 YEAR 1 1901/2155 YYYY 年份值 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD HH...它们最大长度和是否尾部空格被保留等方面也不同。在存储检索过程中不进行大小写转换。

    5.9K71

    MySQL入门很轻松》第4章:数据表中能存放数据类型

    INT(M)中M指示最大显示宽度,最大有效显示宽度是4,需要注意是,显示宽度与存储大小类型包含范围无关。...例如,只需记录年份信息时,可以只用YEAR类型。每种类型都有合法取值范围。...字符串类型用于存储字符串数据,MySQL 支持两类字符串数据:文本字符串和二进制字符串。...但是由于浮点数容易产生误差,因此对精确度要求比较高时,建议使用DECIMAL 来存储。DECIMAL在 MySQL中是以字符串存储用于定义货币等对精确度要求较高数据。...日期和时间类型 MySQL对于不同种类日期和时间有很多数据类型,比如 YEAR和 TIME,如果只需要记录年份,则使用YEAR类型即可;如果只记录时间,只需使用TIME类型

    2K00

    MySQL数据类型_js中数据类型

    MySQL数据类型精讲 1.MySQL数据类型 常见数据类型属性,如下: 2.整数类型 2.1 类型介绍 整数类型一共有 5 种,包括 TINYINT、SMALLINT、MEDIUMINT、INT...如果设置了显示宽度,那么插入数据宽度超过显示宽度限制,会不会截断插入失败? 答案:不会对插入数据有任何影响,还是按照类型实际宽度进行保存,即 显示宽度与类型可以存储 值范围无关 。...SMALLINT :可以用于较小范围统计数据,比如统计工厂固定资产库存数量等。...问题还是出在 MySQL 对浮点类型数据存储方式上。 MySQL 用 4 个字节存储 FLOAT 类型数据,用 8 个字节来存储 DOUBLE 类型数据。无论哪个,都是采用二进制方式来进行存储。...以 YY-MM-DD 格式或者 YYMMDD 格式表示字符串日期,此格式中,年份为两位数值字符串满足YEAR类型格式条件为:当年份取值为00到69时,会被转化为2000到2069;当年份取值为70

    6.7K20

    MySQL】03_数据类型

    MySQL数据类型 类型 类型举例 整数类型 TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)、BIGINT 浮点类型 FLOAT、DOUBLE 定点数类型 DECIMAL...SMALLINT :可以用于较小范围统计数据,比如统计工厂固定资产库存数量等。 MEDIUMINT :用于较大整数计算,比如车站每日客流量等。...YEAR类型 YEAR类型用来表示年份,在所有的日期时间类型中所占用存储空间最小,只需要 1个字节 存储空间。...在格式上为DATE类型和TIME类型组合,可以表示为 YYYY-MM-DD HH:MM:SS ,其中YYYY表示年份,MM表示月份,DD表示日期,HH表示小时,MM表示分钟,SS表示秒。...SET L 0~64 1,2,3,48个字节 CHAR与VARCHAR类型 CHAR和VARCHAR类型都可以存储比较短字符串。

    2.1K30

    MySQL数据类型 详细讲解

    MySQL主要提供整数类型有:TINYTINT、SMALLINT、MEDIUMINT、INT、BIGINT。整数类型属性字段可以添加AUTO_INCREMENT自增约束条件。...如果改变M而固定D,则取值范围将随M变大而变大。 1.3 日期/时间类型 MySQL中有多种表示日期数据类型,主要有:DATETIME、DATE、TIMESTAMP、TIME和YEAR。...但是由于浮点数容易产生误差,因此对精确度要求比较高时,建议使用DECIMAL来存储。DECIMAL在MySQL中是以字符串存储用于定义货币等对精确度要求较高数据。...2.3 日期/时间类型     MySQL对于不同种类日期和时间有多种数据类型,比如YEAR和TIME。如果只需记录年份,则使用YEAR即可,如果只记录时间,则使用TIME类型。    ...CHAR是固定长度,所以它处理速度比VARCHAR速度要快,但是它缺点就是浪费存储空间。所以对存储不大,但在速度上有要求可以使用CHAR类型,反之可以使用VARCHAR类型来实现。

    1.5K10

    SQL函数 CONVERT

    在使用CONVERT(CAST)时,如果字符数据类型(如CHARVARCHAR)没有指定长度,则默认最大长度为30个字符。...该格式既可用于定义从日期/时间/时间戳数据类型转换为字符串时输出,也可用于定义从字符串转换为日期/时间/时间戳数据类型输入。...从SQL_VARCHAR转换时,该值必须是有效ODBC Time、TimestampDate表示。...在转换为整数数据类型SQL_DOUBLE数据类型时,数据值(包括日期和时间)将转换为数字表示。 对于SQL_DATE,这是自1841年1月1日以来天数。...空字符串("),任何非数字字符串值转换如下: SQL_VARCHAR和SQL_TIMESTAMP返回提供值。 数字数据类型转换为0(零)。 SQL_DATE和SQL_TIME转换为NULL。

    5.1K21

    Mysql数据类型最细讲解

    而我们也知道,Mysql中列数据类型很多,而大多数人可能只是知道这些不同数据类型怎么去使用,所以本篇文章主要详细谈谈Mysql中各种不同数据类型。...对比char类型区别:实际上我们更经常使用还是varchar数据类型,因为char类型不管存储数据长度多少,都会占用定义字节数,但是varchar只会占用实际字符串长度+1个字节。...使用途径:比如用户性别我们在建表时可以使用ENUM限制取值范围只能为男女。 set数据类型 定义:数据列定义为set则可以存储集合,set集合最多不超过64k长度。...日期/时间数据类型 Mysql有多种可以用来存储时间或日期数据类型,比如我们可以使用date存储日期,可以使用year存储年份,可以使用time存储时间。...使用途径:可用于存储年月日数据列,比如存储用户出生日期我们就可以使用date数据类型来进行存储

    1.8K30

    MySQL 数据类型

    MySQL中定义数据字段类型对你数据库优化是非常重要MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。...作为SQL标准扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要每个整数类型存储和范围。...依赖于M和D值 小数值 ---- 日期和时间类型 表示时间值日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。...:MM:SS 时间值持续时间 YEAR 1 1901/2155 YYYY 年份值 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD...CHAR 和 VARCHAR 类型类似,但它们保存和检索方式不同。它们最大长度和是否尾部空格被保留等方面也不同。在存储检索过程中不进行大小写转换。

    1.9K40

    MySQL从零开始:05 MySQL数据类型

    MySQL每种数据类型都可以通过以下特征来确定: 它用来表示数据值。 占用空间以及值是固定长度还是可变长度。 数据类型值可以被索引。 MySQL如何比较特定数据类型值。...2 日期和时间类型 表示时间值日期和时间类型为 DATETIME、DATE、TIMESTAMP、TIME 和 YEAR。...注意: 包含两位数年份日期是不明确,因为世纪是未知MySQL 使用如下规则解释两位数年份值: 1. 年份值在70~99之间转换为1970~1999 2....3 字符串类型MySQL中,字符串可以容纳从纯文本到二进制数据(如图像文件)任何内容。...3.1 CHAR 和 VARCHAR CHAR 和 VARCHAR 类型类似,但它们保存和检索方式不同。它们最大长度和是否尾部空格被保留等方面也不同。在存储检索过程中不进行大小写转换。

    2.3K30

    MySQL 数据类型

    MySQL 数据类型 MySQL中定义数据字段类型对你数据库优化是非常重要MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。...作为SQL标准扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要每个整数类型存储和范围。...依赖于M和D值 小数值 ---- 日期和时间类型 表示时间值日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。...:MM:SS 时间值持续时间 YEAR 1 1901/2155 YYYY 年份值 DATETIME 8 1000-01-01 00:00:00/9999-12-31 23:59:59 YYYY-MM-DD...CHAR 和 VARCHAR 类型类似,但它们保存和检索方式不同。它们最大长度和是否尾部空格被保留等方面也不同。在存储检索过程中不进行大小写转换。

    1.7K10

    Mysql学习之路-数据类型

    MySQL 数据类型 MySQL 中定义数据字段类型对你数据库优化是非常重要MySQL 支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。...作为 SQL 标准扩展,MySQL 也支持整数类型 TINYINT、MEDIUMINT 和 BIGINT。下面的表显示了需要每个整数类型存储和范围。...依赖于M和D值 小数值 日期和时间类型 表示时间值日期和时间类型为DATETIME、DATE、TIMESTAMP、TIME和YEAR。...:MM:SS 时间值持续时间 YEAR 1 1901/2155 YYYY 年份值 DATETIME 8 '1000-01-01 00:00:00' 到 '9999-12-31 23:59:59' YYYY-MM-DD...CHAR 和 VARCHAR 类型类似,但它们保存和检索方式不同。它们最大长度和是否尾部空格被保留等方面也不同。在存储检索过程中不进行大小写转换。

    16920
    领券