Sql 2000 中如何把nvarchar 转化为Float?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql 2000 中如何把nvarchar 转化为Float?相关的知识,希望对你有一定的参考价值。

SELECT Charge * Total FROM ChoiceIndexs
WHERE (EntrustCode = 'J-2018-1-0050')

Charge 为Nvrchar类型,Total int类型
想把Charge 转化为Float ?
怎么办啊?

参考技术A 你的问题不在于nvchar转换为float,因为这是隐性转换,不用你管
你要显性将total的类型转换为float,这样才能进行运算。

SELECT Charge * convert(float,Total) FROM ChoiceIndexs
WHERE (EntrustCode = 'J-2018-1-0050')本回答被提问者采纳
参考技术B CONVERT(FLOAT,CHANGE)
或者
CAST(CHANGE AS FLOAT)
参考技术C cast(Charge as float)

如何更正将 nvarchar 转换为 sql 数据类型 numeric(9, 4) 的数字的算术溢出错误? [关闭]

【中文标题】如何更正将 nvarchar 转换为 sql 数据类型 numeric(9, 4) 的数字的算术溢出错误? [关闭]【英文标题】:How to correct Arithmetic overflow error converting nvarchar to numeric for sql datatype numeric(9, 4)? [closed] 【发布时间】:2020-07-08 21:15:07 【问题描述】:

我的值为 2800320,我需要将其插入到 numeric(9, 4) 数据类型的表中。在我作为float.Parse(record.Substring(i, 8)) 给出的代码中。当我插入到 sql 时发生算术溢出错误。请告诉如何纠正这个问题?

【问题讨论】:

这是一个日期,有错字吗?只是好奇今天是 28-03-20 和所有.. No..It's not date :) 你能分享在表格中插入数据和样本值的代码吗?它是哪种类型的数据库? SQL 女士还是我的 SQL? Numeric(9,4) 不能存储 7 位数字,因为它只能容纳小数点前 5 位和小数点后 4 位的数字。 ***.com/questions/60897745/… 【参考方案1】:

NUMERIC(9,4) 的意思是“一个总共有 9 位的数字,其中 4 位在小数点后”,这意味着您还有 5 位来存储您的 7 位数字 2800320

显然,这行不通。选择一个更大的数字,或者将你的数字除以 100 或更多,这样它就适合了

【讨论】:

以上是关于Sql 2000 中如何把nvarchar 转化为Float?的主要内容,如果未能解决你的问题,请参考以下文章

sql server 中怎么把字符串转化为日期?

怎样把sql server2000数据库转化为sql server2000的数据库

在sql server2000中,如何把整型字段转换成字符串型字段?

SQL server中的nvarchar最大的长度是4000个字吗

sql中nvarchar(max)长度测试

如何只修改一次sql server ce的列数据类型的长度?