将数据类型varchar转换为float时出错Error-带负数的总和

时间:2018-03-25 23:13:45

标签: sql

我有以下语句,它添加一个负号并将数字乘以100,但如果将数据类型varchar转换为float的错误则失败。任何帮助表示赞赏。谢谢!

 '-' +  (select Sum (isnull(CAST(Quantity*100  as float),0)) from Tables

2 个答案:

答案 0 :(得分:0)

' +'运算符是字符串。你有一个显式的转换浮动,所以“失败。”

(select -1.0*Sum (isnull(CAST(Quantity*100  as float),0)) from Tables

乘以负数(-1.0,而不是-1,所以你不要把它变成一个整数)可以让你到达你需要的位置。当然,除非数量之和是负数,否则这将给你一个正值。这也可能是你想要的。

答案 1 :(得分:0)

我们只需要在子查询之前添加否定符号,如下所示

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button class="see" data-price="5">First</button>
<button class="see" data-price="8">Second</button>
<button class="see" data-price="10">Third</button>