首页
学习
活动
专区
圈层
工具
发布

MySQL中int、bigint、smallint 和 tinyint的区别详细介绍

最近使用mysql数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint。其中比较迷惑的是int和smallint的差别。...P.S. bigint已经有长度了,在mysql建表中的length,只是用于显示的位数 int 从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647...但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。在 SQL Server 中,int 数据类型是主要的整数数据类型。...在数据类型优先次序表中,bigint 位于 smallmoney 和 int 之间。 只有当参数表达式是 bigint 数据类型时,函数才返回 bigint。...SQL Server 不会自动将其它整数数据类型(tinyint、smallint 和 int)提升为 bigint。 int(M) 在 integer 数据类型中,M 表示最大显示宽度。

9.9K30

mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围

mysql数据库设计,其中,对于数据性能优化,字段类型考虑很重要,搜集了些资料,整理分享出来,这篇为有关mysql整型bigint、int、mediumint、smallint 和 tinyint...int 的 SQL-92 同义词为 integer。 3、mediumint 一个中等大小整数,有符号的范围是-8388608到8388607,无符号的范围是0到16777215。...注意,当两个参数是INTEGER值时,-、+和*将使用BIGINT运算!这意味着如果你乘2个大整数(或来自于返回整数的函数),如果结果大于9223372036854775807,你可以得到意外的结果。...FLOAT(X)有对应的FLOAT和DOUBLE相同的范围,但是显示尺寸和小数位数是未定义的。在MySQL3.23中,这是一个真正的浮点值。...或 INTEGER -2147483648 - 2147483647 INT UNSIGNED 或 INTEGER UNSIGNED 0 - 4294967295 BIGINT -

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

    mysql中int、bigint、smallint 和 tinyint的区别和存储的范围

    部门中有个字段存储的是十进制数字 , 但是表示的意思是转成二进制后 ,每一个位代表不同功能的开关状态 当超过32个功能开关的时候 , 就需要将int类型转换成bigint类型 , 原因就是int只能存储...4个字节也就是2的32次方的整型值 , 装不下了, 下面就是具体的存的范围 bigint 从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807...int 的 SQL-92 同义字为 integer。 smallint 从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。...tinyint 从 0 到 255 的整型数据。存储大小为 1 字节。 注释 在支持整数值的地方支持 bigint 数据类型。...但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。

    2.3K10

    mysql的数据类型int、bigint、smallint 和 tinyint取值范围

    int 的 SQL-92 同义字为 integer。 smallint 从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。...tinyint 从 0 到 255 的整型数据。存储大小为 1 字节。 注释 在支持整数值的地方支持 bigint 数据类型。...但是,bigint 用于某些特殊的情况,当整数值超过 int 数据类型支持的范围时,就可以采用 bigint。在 SQL Server 中,int 数据类型是主要的整数数据类型。...在数据类型优先次序表中,bigint 位于 smallmoney 和 int 之间。 只有当参数表达式是 bigint 数据类型时,函数才返回 bigint。...SQL Server 不会自动将其它整数数据类型(tinyint、smallint 和 int)提升为 bigint。

    5.2K31

    Integer、new Integer() 和 int 比较的面试题

    ;而 int 则是直接存储数据值 4、Integer的默认值是null,int的默认值是0 Integer、new Integer() 和 int 的比较 1、两个 new Integer() 变量比较...因为 Integer变量 指向的是 java 常量池 中的对象, 而 new Integer() 的变量指向 堆中 新建的对象,两者在内存中的地址不同。...4、 int 变量 与 Integer、 new Integer() 比较时,只要两个的值是相等,则为true 因为包装类Integer 和 基本数据类型int 比较时,java会自动拆包装为int ,...然后进行比较,实际上就变为两个int变量的比较。...i01.intValue()i02 两个值的比较5959 -->true; i01 == i03 。由于 59在-128到127之间,所以,i01和i03的赋值操作返回的是同一个对象。

    1.2K30

    Spark的Streaming和Spark的SQL简单入门学习

    3.2、DStream相关操作:   DStream上的原语与RDD的类似,分为Transformations(转换)和Output Operations(输出)两种,此外转换操作中还有一些比较特殊的原语...Spark SQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作为分布式SQL查询引擎的作用。 b、为什么要学习Spark SQL?   ...我们已经学习了Hive,它是将Hive SQL转换成MapReduce然后提交到集群上执行,大大简化了编写MapReduce的程序的复杂性,由于MapReduce这种计算模型执行效率比较慢。...在Spark SQL中SQLContext是创建DataFrames和执行SQL的入口,在spark-1.5.2中已经内置了一个sqlContext: 1.在本地创建一个文件,有三列,分别是id、name...) case class Person(id:Int, name:String, age:Int) 4.将RDD和case class关联 val personRDD = lineRDD.map(x

    1.5K90

    Java中int和Integer的区别

    二、三种引用类型: 1.类class 2.接口interface 3.数组array 三、int和Integer的区别 1、Integer是int的包装类,int则是java的一种基本数据类型 2、Integer...,int的默认值是0 四、延伸: 关于Integer和int的比较 1、由于Integer变量实际上是对一个Integer对象的引用,所以两个通过new生成的Integer变量永远是不相等的(因为new...变量比较时,只要两个变量的值是向等的,则结果为true(因为包装类Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量的比较) Integer...i = new Integer(50); int j = 50 System.out.print(i == j); //true 3、非new生成的Integer变量和new Integer()生成的变量比较时...(因为非new生成的Integer变量指向的是java常量池中的对象,而new Integer()生成的变量指向堆中新建的对象,两者在内存中的地址不同) Integer i = new Integer(

    1.3K10

    盘点 Sql 中几个比较实用的小 Tips!

    工作中,我们经常需要编写 SQL 脚本,对数据库进行增、删、改、查,很少会考虑到 Sql 性能优化 实际上,从性能角度考虑,有很多 Sql 关键字都有它们各自的使用场景;如果使用恰当,能大大地提升后端服务的响应效率...下面以 Mysql 为例,罗列出几个比较实用的小 Tips 2. union、union all、or union [all] 代表联合查询,即:将多个查询结果合并起来成一个结果并返回 PS:union...联合查询针对每一个查询结果,必须保证列数量、列数据类型及查询顺序一致 语法如下: # 以两张表的联合查询为例 # table_one:表一 # table_two:表二 # 表一中的查询字段:table_one_field1...,直接返回表联合后的结果 因此,union all 执行效率要高很多,在不需要去重和排序时,更推荐使用 union all or or 用于 SQL where 子句中,SQL 脚本可读性更高,但是它会引起全表扫描...,根本不走索引查询 所以通常情况下,union [all] 查询会利用索引进行查询,执行效率要高于 or;但是当 or 条件中查询列相同,or 的执行效率要高于 union 3. group by +

    1.3K20

    Spark SQL中对Json支持的详细介绍

    Spark SQL中对Json支持的详细介绍 在这篇文章中,我将介绍一下Spark SQL对Json的支持,这个特性是Databricks的开发者们的努力结果,它的目的就是在Spark中使得查询和创建JSON...而Spark SQL中对JSON数据的支持极大地简化了使用JSON数据的终端的相关工作,Spark SQL对JSON数据的支持是从1.1版本开始发布,并且在Spark 1.2版本中进行了加强。...在下面的SQL查询例子中,外层的字段(name和address)被抽取出来,嵌套在内层的address字段也被进一步的抽取出来: /** * User: 过往记忆 * Date: 15-02-04...SQL中对JSON的支持 Spark SQL提供了内置的语法来查询这些JSON数据,并且在读写过程中自动地推断出JSON数据的模式。...在这种情况下,Spark SQL将把这个模式和JSON数据集进行绑定,并且将不再会去推测它的模式。用户不需要了解JSON数据集中所有的字段。

    5.6K90

    传统数据中台的失败根源,与轻型AI中台的架构比较

    开篇:同一个问题,两次浪潮七年前,数据中台是行业最热的概念,超过60%的数据中台在交付后一年内活跃度下降50%以上。今天,AI中台成了新的热点。招投标文件里有它,厂商方案里有它,行业会议上有它。...②数据集成层——ETL/CDC工具做抽取、清洗、转换、加载,把源系统数据搬进中台。③数据仓库层——中台的核心,ODS贴源→DW明细→主题域→数据集市,数据在这里被反复加工、分层存放。...四、轻型AI中台:五层结构把上述问题补上,架构会长成什么样?以下是轻型AI中台的五层结构:业务系统——保持原样。这是关键的一条:不改库表,只改界面上重复/冲突的字段。...传统中台把治理留在墙外,于是它只能靠项目期的一次性热情维持;轻型AI中台把治理放进墙内,靠智能体每天的实际运行维持。而治理为什么第一次能常态化?因为成本结构变了。...结语:看它交付的是"中台",还是"能力"传统数据中台的架构是完整的,大面积失败的局限在于架构之外的数据治理。轻型AI中台不仅是架构更轻,关键在于数据治理在前,对客户交付的是能力,而不是中台概念。

    20110

    【Spark篇】--Spark中的宽窄依赖和Stage的划分

    一、前述 RDD之间有一系列的依赖关系,依赖关系又分为窄依赖和宽依赖。 Spark中的Stage其实就是一组并行的任务,任务是一个个的task 。...二、具体细节 窄依赖 父RDD和子RDD partition之间的关系是一对一的。...或者父RDD一个partition只对应一个子RDD的partition情况下的父RDD和子RDD partition关系是多对一的。不会有shuffle的产生。...备注:图中几个理解点:    1、Spark的pipeLine的计算模式,相当于执行了一个高阶函数f3(f2(f1(textFile))) !+!+!...所以这也是比Mapreduce快的原因,完全基于内存计算。    2、管道中的数据何时落地:shuffle write的时候,对RDD进行持久化的时候。    3.

    2.8K10

    ASP中的数字和字符比较

    昨晚和老迷聊天聊到很晚,说到一个把字符串转换为数字进行比较的问题。老迷说他喜欢保持字符串本身的类型,进行字符串的匹配比较,而不喜欢把字符串强制转换为数字进行比较。...End If 在VB中,变量的数据类型默认是 Variant,在必要的时候自动转换,例如上例第一种,由于表达式右边是数字,因此系统会自动将字符串变量a转换为数字类型,然后进行数字的比较。...这个从代码上看没有任何区别的比较过程,在执行时却差着一个步骤。这就是老迷关于他为什么更愿意保持字符串变量的字符串类型来进行比较的原因。...Request.Form("cookies") 作为字符串考虑,我们只需要一行代码即可: If Request.Form("cookies") "" and a = "1" Then 就同时完成了数据有效性验证和比较...这个很小的细节,在实际编程中用到的地方非常多,每个地方都多两个步骤,那的确在性能上就是比较低大的浪费了

    4.9K80

    Python中的循环-比较和性能

    列表x和y是通过从r中随机选择n个元素获得的: n = 1_000 x, y = random.sample(r, n), random.sample(r, n) 让我们看看获取具有n个元素的新列表...z所需的时间,每个元素是x和y中相应元素的总和。...首先让我们使用Python整数x和y的列表创建对应numpy的64位整数数组: x_, y_ = np.array(x, dtype=np.int64), np.array(y, dtype=np.int64...在这种情况下,它们显示相同的关系,使用时甚至可以提高性能numpy。 嵌套循环 现在让我们比较嵌套的Python循环。 使用纯Python 我们将再次处理两个名为x和y的列表。...让我们使用x和y创建对应numpy的64位整数数组: x_, y_ = np.array(x, dtype=np.int64), np.array(y, dtype=np.int64) 让我们检查一下性能

    5.2K20

    Java中的BigDecimal类和int和Integer总结「建议收藏」

    大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说Java中的BigDecimal类和int和Integer总结「建议收藏」,希望能够帮助大家进步!!!...int默认值是0,而Integer默认值是null; int和Integer(无论是否new)比较,都为true, 因为会把Integer自动拆箱为int再去比; Integer是引用类型,用==比较两个对象...各自的应用场景 Integer默认值是null,可以区分未赋值和值为0的情况。比如未参加考试的学生和考试成绩为0的学生 加减乘除和比较运算较多,用int 容器里推荐用Integer。...对于应用程序里定义的枚举类型, 其值如果是整形,则最好定义为int,方便与相关的其他int值或Integer值的比较 Integer提供了一系列数据的成员和操作,如Integer.MAX_VALUE,Integer.valueOf...建议,一般用int类型,这样一方面省去了拆装箱,另一方面也会规避数据比较时可能带来的bug。

    1.8K10
    领券