zoukankan      html  css  js  c++  java
  • MySql数据类型分析(数值(小数型)类型) Part2

    一.小数型 包括两种类型:

    1.浮点型 Float(M,D)

    2.定点型 decimal(M,D)


    二.M,D分析

    1.小数型中的M和整数中的M 大不相同

    2.整数中的M 与所存数据的大小没有关系,只在有ZEROFILL修饰符时,控制显示填充零的为数有关。

    3.小数中的M与所存数据的大小有必然关系,假如 申请类型为:float(6,2):其中,6代表小数类型为 不包括小数点在内为6为,其中2代表小数位,因此,能存入-9999.99到+9999.99

    4.如果Float(6,2) 带有标示符 Unsigned,则此数据类型的存储范围为:0.00到+9999.99

    举例:

    创建表goods:

    create table goods

    (

    name varchar(10) not null default ' ',

    price float(6,2) not null default 0.00

    ) charset utf8;

    插入一条数据:

    insert into goods

    (name,price)

    values

    ('跑步机',688.896);


    点击回车,执行成功;

    三.大家可以看到,已经成功插入到goods表中,

    其中,小数 688.896 经舍入法 进行了截取,

    Mysql中默认的舍入法 是 银行家舍入法,下一篇将说明 银行家舍入法


    四.定点类型

    decimal(M,D)

    分析:

    1.定点类型和浮点类型 用法差不多,区别就是定点类型的精度比浮点类型的精度高。

    举例:

    在foods表中增加两列

    alter table foods

    add

    bigprice float(9,2) not null default 0.00;

    alter table foods

    add

    decimprice decimal(9,2) not null default 0.00;


    插入一条数据:

    insert into foods

    (name,bigprice ,decimprice )

    values

    ('自行车',1234567.23,1234567.23);


    执行结果:

    由此看出,decimal类型更精确


    五.小数类型在内存中占用的字节

    小数类型在内存中占用的字节数是固定的,并不是说,你输入M的值大,字节数就会变大。

    小数类型 在计算机中占用4个字节,或8个字节,小数类型的计算非常复杂。


  • 相关阅读:
    当简单的计算遇上了大数,其实大数运算也很简单
    揭开源码的神秘面纱,让源码从此无处藏身
    JAVA对象和XML文档、原来他们之间还有这一出
    JAVA反射其实就是那么一回事
    Metatable让我从心认知了Lua(相知篇)
    Github
    常见问题汇总
    文章目录
    前后端分离下使用SignalR
    IdentityServer_0_参考资料
  • 原文地址:https://www.cnblogs.com/chenpan/p/3661846.html
Copyright © 2011-2022 走看看