精华内容
下载资源
问答
  • decimal 类型

    2012-11-07 17:39:00
    今天看到转换方面发现居然多了一种类型decimal之前对其一直是能过就过知道大概有这么一种类型今天先词典查发现decimal的意思是十进制小数纳闷为什么十进制小数还需要专拿一个类型来实现double和float不是挺好的了...

    今天看到转换方面    发现  居然多了一种类型 decimal    之前对其一直是能过就过  知道大概有这么一种类型     今天先用词典查 发现 decimal  的意思是  十进制小数

    纳闷 为什么十进制小数 还需要专拿一个类型来实现   double 和float  不是挺好的了么

    然后看书   发现他们之间的转换还是有问题     

    然后查网上的资料终于明白   -----》http://www.cnblogs.com/xiaoL/archive/2011/01/20/1939835.html

     

    里边写到  decimal 类型有28位的有效数字   但是表示的数据范围却比float和double类型小。decimal类型并不是C#中的基础类型,所以使用的时候会对计算时的性能有影响。

    这句话的意思就是  虽然decimal  占用的内存更大  但是 那是用来保存 精度的    也就是保存 小数点以后的长度的

     

    文中还提出了两点  平常容易出现的错误

    还有两个非常危险的错误认识!!

    1、decimal不是浮点型、decimal不存在精度损失。

    下面有段程序大家可以去看看结果是什么。记住!所有的浮点型变量都存在精度损失的问题,而decimal是一个不折不扣的浮点型,不论它精度有多高,精度损失依然存在!

    decimal dd = 10000000000000000000000000000m;

    dd += 0.1m;

    Console.WriteLine ( "{0:G50}", dd ); 

    2、decimal所能储存的数比double大,从double到decimal的类型转换不会出现任何问题。

    微软在decimal的帮助上真的要好好反省了。实际上只有从整形到decimal的转换才是扩大转换,decimal的精度比double大,但所能储存的最大数却比double要小。

     

    转载于:https://www.cnblogs.com/jilodream/archive/2012/11/07/4222773.html

    展开全文
  • 如何将decimal转换为dbnull

    千次阅读 2015-10-12 16:17:54
    dt.Rows[x][y]=Convert.DBNull;...看了下Convert,里面东西还是挺多的,可以转换许多数据类型,以后就不用parse什么的了 short就Convert.ToInt16,int就Int32,long就Int64 还有目前不知道怎么转null

    dt.Rows[x][y]=Convert.DBNull;

    看了下Convert,里面东西还是挺多的,可以转换许多数据类型,以后就不用parse什么的了微笑

    short就用Convert.ToInt16,int就Int32,long就Int64

    还有目前不知道怎么转null

     

    展开全文
  • 之前在写代码的时候遇到一个坑,计算钱的时候总是不对,最终才发现是类型转换问题导致的 浮点数 vs Decimal >>> from decimal import Decimal >>&...

    之前在写代码的时候遇到一个坑,计算钱的时候总是不对,最终才发现是类型转换问题导致的

    浮点数 vs Decimal

    >>> from decimal import Decimal
    >>> a = 0.36
    >>> b = str(a)
    >>> b
    '0.36'
    
    >>> c = Decimal(a)
    >>> c
    Decimal('0.35999999999999998667732370449812151491641998291015625')
    
    >>> d = Decimal(b)
    >>> d
    Decimal('0.36')
    
    >>> d * 10
    Decimal('3.60')
    
    >>> d * 0.5
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: unsupported operand type(s) for *: 'decimal.Decimal' and 'float'
    
    >>> d * Decimal('0.5')
    Decimal('0.180')
    

    从上边的代码中,可以看出

    • Decimal(float) 并不是精确的
    • Deciaml(str(float)) 才是精确的
    • Deciaml(‘0.36’) 跟 Decimal(0.36)是不同的

    最佳实践,写代码的时候,Decimal(‘1.23’),总是在数字的开始和结尾加上’’,可以有效的减少跳坑

    坑有多少

    # -*- coding: utf-8 -*-
    num = 1
    while num <= 100:
        rs = num / 100 + 1
        print(rs)
        num += 1
    
    
    # 执行结果
    1.01
    1.02
    1.03
    1.04
    1.05
    1.06
    1.07
    1.08
    1.09
    1.1
    1.11
    1.12
    1.13
    1.1400000000000001
    1.15
    1.16
    1.17
    1.18
    1.19
    1.2
    1.21
    1.22
    1.23
    1.24
    1.25
    1.26
    1.27
    1.28
    1.29
    1.3
    1.31
    1.32
    1.33
    1.34
    1.35
    1.3599999999999999
    1.37
    1.38
    1.3900000000000001
    1.4
    1.41
    1.42
    1.43
    1.44
    1.45
    1.46
    1.47
    1.48
    1.49
    1.5
    1.51
    1.52
    1.53
    1.54
    1.55
    1.56
    1.5699999999999998
    1.58
    1.5899999999999999
    1.6
    1.6099999999999999
    1.62
    1.63
    1.6400000000000001
    1.65
    1.6600000000000001
    1.67
    1.6800000000000002
    1.69
    1.7
    1.71
    1.72
    1.73
    1.74
    1.75
    1.76
    1.77
    1.78
    1.79
    1.8
    1.81
    1.8199999999999998
    1.83
    1.8399999999999999
    1.85
    1.8599999999999999
    1.87
    1.88
    1.8900000000000001
    1.9
    1.9100000000000001
    1.92
    1.9300000000000002
    1.94
    1.95
    1.96
    1.97
    1.98
    1.99
    2.0
    

    浮点数在计算机中的本质

    展开全文
  • SQLserver 计算列以及 money decimal 区别

    千次阅读 2020-03-15 14:10:37
    sql server的 money 类型其实就是小数类型 decimal ,我不喜欢它,因为有一次什么工具生成,发现它自动把money类型转换成了decimal类型了,与其让它转,还不如自己设计数据库时将货币类型字段设置为 decimal 类型...

     

    sql server的 money 类型其实就是小数类型 decimal ,我不喜欢用它,因为有一次什么工具生成,发现它自动把money类型转换成了decimal类型了,与其让它转,还不如自己设计数据库时将货币类型字段设置为 decimal 类型不就得了,废那事干嘛!

         字节数    长度(小数点前.小数点后)
    money    8    15位.4位
    decimal(19,4)    9    15位.4位(千万亿以下)
               
    smallmoney    4    6位.4位
    decimal(10,4)    9    6位.4位(百万以下)
               
    decimal(9,4)    5    5位.4位(十万以下)
    看一看,decimal与money同样的长度与精度,但decimal占用字节数要比money多1个字节(比smallmoney更是要多5个字节),但还是算了,为了通用与标准,牺牲一点容量算了,反正现在硬盘大得要命。
     

    展开全文
  • sql server的 money 类型其实就是小数类型 decimal ,我不喜欢它,因为有一次什么工具生成,发现它自动把money类型转换成了decimal类型了,与其让它转,还不如自己设计数据库时将货币类型字段设置为 decimal 类型...
  • 怎么转换数据库float类型的数据

    千次阅读 2010-11-11 22:19:00
    我用float类型储存的货币,如果10.0000或者135.25668之类的数据 我想在程序转换为还两位小数的值 程序中怎么写了?我试了好几次都是显示的整数。... 都是可以的吧,对了你用什么数据库了
  • 什么是隐式转换 Implicit Conversion 隐式转换就是直接使用,比如可以把一个 byte 类型直接在 int 上。 比如以下直接把 byte 的 b 赋给 int 的 n,之间是直接的,没存在什么额外的关键字,全由系统自动完成类型...
  • 发生在一次迁移表数据时,原表字段类型为text,目标表字段类型为double, 在转换数据类型了 cast(col as decimal(20, 2...浏览了很多博客发现只有 round(value, 2) 转换才可以正常导入,不知道为什么。。...
  • sql server 的 money类型

    万次阅读 2009-11-06 11:33:00
    sql server的 money 类型其实就是小数类型 decimal ,我不喜欢它,因为有一次什么工具生成,发现它自动把money类型转换成了decimal类型了,与其让它转,还不如自己设计数据库时将货币类型字段设置为 decimal 类型...
  • BCD码干什么用的?

    2014-08-07 17:55:00
    二进制编码的十进制(Binary Coded Decimal,BCD)数据类型在计算机系统中已经存在很久了。BCD格式经常用于简化对使用十进制数字的设备(比如必须向人显示数字的设备,如时钟和计时器)的处理。处理器不是把十进制...
  • 所以我在sql查询操作过程中,进行了 “除法” 运算 ,输出额结果是decimal类型, 于是在序列化时会报错(python转换json格式的时候会报错),经过查询,只需转化一下类型即可; 【例】select number/100 ...
  • 一、其它数据类型转换为字符串 短整型(int)itoa(i,temp,10);///将i转换为字符串放入temp中,最后一个数字表示十进制...浮点数(float,double)fcvt可以完成转换,这是MSDN中的例子:int decimal, sign; char *buffe...
  • Small Decimal Values) 使用二进制浮点数(使用IEEE 754的所有语言)的最著名副作用是: <pre><code> js 0.1 + 0.2 === 0.3; // false </code></pre> 简单说,...
  • 6.4.2 decimal类型 123 6.4.3 浮点、decimal和整数值的兼容性 124 6.4.4 显式类型转换 124 6.4.5 常量:字面值的符号名字 125 6.4.6 格式化数字值 128 6.4.7 bool类型:初步接触 130 6.5 小结 130 6.6 复习题 131 ...
  • 2.1.3 decimal类型 23 2.1.4 字面值 24 2.2 更多基本类型 27 2.2.1 布尔类型 27 2.2.2 字符类型 27 2.2.3 字符串 29 2.3 null和void 34 2.3.1 null 34 2.3.2 void 35 2.4 类型...
  • C# Primer Plus中文版

    热门讨论 2009-05-24 00:25:01
    6.4.2 decimal类型 123 6.4.3 浮点、decimal和整数值的兼容性 124 6.4.4 显式类型转换 124 6.4.5 常量:字面值的符号名字 125 6.4.6 格式化数字值 128 6.4.7 bool类型:初步接触 130 6.5 小结 130 6.6 复习题 131 ...
  • 引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。 [Page] 39.启动一个线程是run()还是start()? 答:启动一个线程是调用start()方法,使线程所代表的虚拟处理机...
  • 在一小时内学会 C#(txt版本)

    热门讨论 2009-08-19 18:09:37
    数据类型转换 ? 异常处理 ? .NET 库 编程结构 和 C++ 一样,C# 是大小写敏感的。半角分号(;)是语句分隔符。和 C++ 有所区别的是,C# 中没有单独的声明(头)和实现(CPP)文件。所有代码(类声明和实现)都...
  • 第4部分为数据库管理篇,介绍如何使用T-SQL程序对数据进行复杂的运算,以及如何使用视图、存储过程、触发器、索引、用户定义数据类型、用户定义函数、全文索引、游标、事务和锁、统计信息和同义词等方面的知识;...
  • 第4部分为数据库管理篇,介绍如何使用T-SQL程序对数据进行复杂的运算,以及如何使用视图、存储过程、触发器、索引、用户定义数据类型、用户定义函数、全文索引、游标、事务和锁、统计信息和同义词等方面的知识;...
  • 实现了在基本数据类型和字符串之间的转换 strings 实现了操作字符串的简单函数 sync 提供了基本的同步机制,如互斥锁 syscall 包含一个低级的操作系统原语的接口 testing 提供对自动测试Go包的支持 ...
  • MYSQL中文手册

    2013-03-11 21:21:34
    1.5.1. 什么是MaxDB? 1.5.2. MaxDB的历史 1.5.3. MaxDB的特性 1.5.4. 许可和支持 1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 ...
  • MySQL 5.1中文手冊

    2009-12-11 09:43:12
    1.5.1. 什么是MaxDB? 1.5.2. MaxDB的历史 1.5.3. MaxDB的特性 1.5.4. 许可和支持 1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. ...

空空如也

空空如也

1 2 3
收藏数 44
精华内容 17
关键字:

decimal类型用什么转换