全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  应聘面试  >  Java面试题

mysql 里记录货币用什么字段类型好

发布时间:2022-10-20 17:59:00
发布人:qyf

mysql 里记录货币用什么字段类型好

  NUMERIC和DECIMAL类型被Mysql实现为同样的类型,这在SQL92标准允许。他们被用于保存值,该值的准确精度是极其重要的值,例如与金钱有关的数据。当声明一个类是这些类型之一时,精度和规模的能被(并且通常是)指定;点击这里有一套最全阿里面试题总结。

  例如: salary DECIMAL(9,2) 在这个例子中,9(precision)代表将被用于存储值的总的小数位数,而2(scale)代表将被用于存储小数点后的位数。

  因此,在这种情况下,能被存储在salary列中的值的范围是从-9999999.99 到 9999999.99。在ANSI/ISO SQL92中,句法DECIMAL(p)等价于DECIMAL(p,0)。

  同样,句法DECIMAL等价于DECIMAL(p,0),这里实现被允许决定值p。Mysql当前不支持DECIMAL/NUMERIC数据类型的这些变种形式的任一种。这一般说来不是一个严重的问题,因为这些类型的主要益处得自于明显地控制精度和规模的能力。

  DECIMAL和 NUMERIC值作为字符串存储,而不是作为二进制浮点数,以便保存那些值的小数精度。一个字符用于值的每一位、小数点(如果 scale>0)和“-”符号(对于负值)。如果 scale 是 0, DECIMAL 和 NUMERIC 值不包含小数点或小数部分。

  DECIMAL和NUMERIC值得最大的范围与DOUBLE一样,但是对于一个给定的DECIMAL 或NUMERIC列,实际的范围可由制由给定列的precision或scale限制。当这样的列赋给了小数点后面的位超过指定scale所允许的位的值,该值根据scale四舍五入。当一个 DECIMAL或NUMERIC列被赋给了其大小超过指定(或缺省的)precision和scale隐含的范围的值,Mysql存储表示那个范围的相应的端点值。我希望本文可以帮助你提升技术水平。那些,感觉学的好难,甚至会令你沮丧的人,别担心,我认为,如果你愿意试一试本文介绍的几点,会向前迈进,克服这种感觉。这些要点也许对你不适用

  但你会明确一个重要的道理:接受自己觉得受困这个事实是摆脱这个困境的步。

相关文章

华为外包java面试题-Java实现单链表的逆序

2023-07-25

Java程序员面试题

2023-07-21

Java面试题及答案

2023-07-20

什么是Java中的线程?如何创建和启动线程?

2023-07-18

Java中的异常处理机制是什么?请解释try-catch-finally块的作用

2023-07-18

面向对象编程的特征是什么?请解释每个特征

2023-07-18
在线咨询 免费试学 教程领取