首先说一下mysql的数值类型,MySQL支持所有标准SQL数值数据类型。这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)。关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。

BIT数据类型保存位字段值,并且支持MyISAM、MEMORY、InnoDB和BDB表。

作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT。下面的表显示了需要的每个整数类型的存储和范围。

类型

字节

最小值

最大值

(带符号的/无符号的)

(带符号的/无符号的)

TINYINT

1

-128

127

0

255

SMALLINT

2

-32768

32767

0

65535

MEDIUMINT

3

-8388608

8388607

0

16777215

INT

4

-2147483648

2147483647

0

4294967295

BIGINT

8

-9223372036854775808

9223372036854775807

0

18446744073709551615

Mysql类型关键字后面的括号内指定整数值的显示宽度(例如,INT(4))。该可选显示宽度规定用于显示宽度小于指定的列宽度的值时从左侧填满宽度。显示宽度并不限制可以在列内保存的值的范围,也不限制超过列的指定宽度的值的显示。

当结合可选扩展属性ZEROFILL使用时, 默认补充的空格用零代替。例如,对于声明为INT(5) ZEROFILL的列,值4检索为00004。请注意如果在整数列保存超过显示宽度的一个值,当MySQL为复杂联接生成临时表时会遇到问题,因为在这些情况下MySQL相信数据适合原列宽度。

所有整数类型可以有一个可选(非标准)属性UNSIGNED。当你想要在列内只允许非负数和该列需要较大的上限数值范围时可以使用无符号值。

所以int(10)与int(11)后的括号中的字符表示显示宽度,整数列的显示宽度与mysql需要用多少个字符来显示该列数值,与该整数需要的存储空间的大小都没有关系,int类型的字段能存储的数据上限还是2147483647(有符号型)和4294967295(无符号型)。

浮点和定点类型也可以为UNSIGNED。同数类型,该属性防止负值保存到列中。然而,与整数类型不同的是,列值的上范围保持不变。

如果为一个数值列指定ZEROFILL,MySQL自动为该列添加UNSIGNED属性。

对于浮点列类型,在MySQL中单精度值使用4个字节,双精度值使用8个字节。

FLOAT类型用于表示近似数值数据类型。SQL标准允许在关键字FLOAT后面的括号内选择用位指定精度(但不能为指数范围)。MySQL还支持可选的只用于确定存储大小的精度规定。0到23的精度对应FLOAT列的4字节单精度。24到53的精度对应DOUBLE列的8字节双精度。

MySQL允许使用非标准语法:FLOAT(M,D)或REAL(M,D)或DOUBLE PRECISION(M,D)。这里,“(M,D)”表示该值一共显示M位整数,其中D位位于小数点后面。例如,定义为FLOAT(7,4)的一个列可以显示为-999.9999。MySQL保存值时进行四舍五入,因此如果在FLOAT(7,4)列内插入999.00009,近似结果是999.0001。

MySQL将DOUBLE视为DOUBLE PRECISION(非标准扩展)的同义词。MySQL还将REAL视为DOUBLE PRECISION(非标准扩展)的同义词,除非SQL服务器模式包括REAL_AS_FLOAT选项。

为了保证最大可能的可移植性,需要使用近似数值数据值存储的代码应使用FLOAT或DOUBLE PRECISION,不规定精度或位数。

DECIMAL和NUMERIC类型在MySQL中视为相同的类型。它们用于保存必须为确切精度的值,例如货币数据。当声明该类型的列时,可以(并且通常要)指定精度和标度;例如:

salary DECIMAL(5,2)

在该例子中,5是精度,2是标度。精度表示保存值的主要位数,标度表示小数点后面可以保存的位数。

在MySQL 5.1中以二进制格式保存DECIMAL和NUMERIC值。

标准SQL要求salary列能够用5位整数位和两位小数保存任何值。因此,在这种情况下可以保存在salary列的值的范围是从-999.99到999.99。

在标准SQL中,语法DECIMAL(M)等价于DECIMAL(M,0)。同样,语法DECIMAL等价于DECIMAL(M,0),可以通过计算确定M的值。在MySQL 5.1中支持DECIMAL和NUMERIC数据类型的变量形式。M默认值是10。

DECIMAL或NUMERIC的最大位数是65,但具体的DECIMAL或NUMERIC列的实际范围受具体列的精度或标度约束。如果此类列分配的值小数点后面的位数超过指定的标度允许的范围,值被转换为该标度。(具体操作与操作系统有关,但一般结果均被截取到允许的位数)。

BIT数据类型可用来保存位字段值。BIT(M)类型允许存储M位值。M范围为1到64。

要指定位值,可以使用b’value’符。value是一个用0和1编写的二进制值。例如,b’111′和b’100000000′分别表示7和128。

mysql float 转换 int_Mysql 数值类型(int,float,tinyint.......)[转]相关推荐

  1. python数字类型floatcomplexint_Python 四种数值类型(int,long,float,complex)区别及转换

    对python这个高级语言感兴趣的小伙伴,下面一起跟随512笔记的小编两巴掌来看看吧! Python支持四种不同的数值类型,包括int(整数)long(长整数)float(浮点实际值)complex ...

  2. python数字类型floatcomplexint_浅谈python 四种数值类型(int,long,float,complex)

    Python支持四种不同的数值类型,包括int(整数)long(长整数)float(浮点实际值)complex (复数),本文章向码农介绍python 四种数值类型,需要的朋友可以参考一下. 数字数据 ...

  3. python数值类型教程_Python数值类型 int、float、complex 详解

    Python数值类型 int.float.complex 详解 Python数值类型:int.float.complex 在Python程序中,int.float和complex是三种十分重要的数值类 ...

  4. vba文字型的值转换成数值类型

    今天在做表的时候,发现数组中提取出来的是文字类型,需要转换成数值类型,网上搜索到了字符转换的方法,超级实用,记录下来. 如果用mid函数提取的字符范围增加,可参照VBA中的帮助"类型转换函数 ...

  5. python float和int的区别_Python四种数值类型(int,long,float,complex)区别及转换

    Python支持四种不同的数值类型,包括int(整数)long(长整数)float(浮点实际值)complex (复数), 数字数据类型存储数值.他们是不可改变的数据类型,这意味着改变数字数据类型的结 ...

  6. python中long类型_浅谈python 四种数值类型(int,long,float,complex)

    Python支持四种不同的数值类型,包括int(整数)long(长整数)float(浮点实际值)complex (复数),本文章向码农介绍python 四种数值类型,需要的朋友可以参考一下. 数字数据 ...

  7. java sql 写入 float_SQL Server的小数数值类型(float 和 decimal)用法

    在SQL Server中,实际上小数数值只有两种数据类型:float 和 decimal,分别是近似数值和精确数值.其他小数类型,都可以使用float和decimal来替代,例如,双精度(double ...

  8. MySQL 基础 -- MySQL 数据类型说明(数值类型、字符串类型、日期时间类型)、SQL通用语法和SQL分类

    文章目录 1. 数据类型说明(数值类型.字符串类型.日期时间类型) 1.1数值类型 1.2 字符串类型 1.3 日期类型 1.4 数据类型练习:设计一张员工信息表 2. SQL通用语法和SQL分类 2 ...

  9. mysql Integer Types (Exact Value) - INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT

    使用mysql的时候,用到int类型的蛮多,需要注意一下: 1. 值的范围 Type Storage Minimum Value Maximum Value   (Bytes) (Signed/Uns ...

最新文章

  1. 岭南六少个人独立博客开通啦
  2. 【翻译】理念:无冲突的扩展本地DOM原型
  3. java list 截取_Java常用代码汇总,建议背会
  4. [转载] 使用异步 I/O 大大提高应用程序的性能
  5. 用 或 || 取代常规 if - else 结构
  6. 【报告分享】2021企业营销数字化转型研究报告.pdf(附下载链接)
  7. SQL语句常用优化技巧
  8. 删除字符串前面的0,00,000。。。
  9. 关于 Ubuntu Server 18.04 的网络(dchp/dns/route/PPPoE)
  10. STM32——库函数版——数码管静态显示程序
  11. 寻迹pid算法 c语言,基于STC12C5A60S2单片机及PID控制算法的气味循迹车设计
  12. PS如何快速更换logo颜色
  13. Mybatis提高查询效率的方式
  14. catia今天突然打不开了_catia打不开的解答
  15. 浅析TVS管的响应时间与TVS管伏安特性曲线
  16. wordpress footer.php,wordpress的get_footer( )函数功能详解
  17. 2020年高教社杯全国大学生数学建模竞赛题目D题 接触式轮廓仪的自动标注
  18. 今日头条各种套路玩法
  19. 大牛证券:涪陵榨菜Q2单季营收增速创近六年新低
  20. Windows Azure 解决方案系列: Real World Windows Azure: 与CloudBerry Lab 商业开发副总经理,Pavel Bondarchuk的访谈...

热门文章

  1. 微软linux搞笑视频,微软良心:Linux版Skype Beta更新,增加群视频功能
  2. 网站备案管理系统 新地址 miitbeian miibeian.gov.cn www.miibeian.gov.cn
  3. stm32l051低功耗之stop模式
  4. JavaFX爱好者看过来,这款工具值得拥有
  5. 小米web前端实习面经
  6. 处理 multipart 请求
  7. html中的元素 英文,HTML 常用标签元素属性名英文书写
  8. 编程乱码问题,DEVC++中文乱码问题
  9. PQmagic8.0分区出现问题Error 2003的解决办法
  10. mysql商品查询,mysql基本查询