所以我有这个查询来从我的数据库表中获取包含in
和out
列的结果。
<cfquery name="getInfo" datasource="testing">
select in, out from test
</cfquery>
现在我需要做的是采取一个静态数字,例如; 100,并添加in
并从该静态数字中减去out
。
所以这就是我的尝试:
<cfquery name="getInfo" datasource="testing">
select in, out from test
</cfquery>
<table>
<cfset balance = 100>
<cfloop query="getInfo">
<cfset balance = balance + in - out> <!--- THIS IS WHAT I TRIED --->
<tr>
<td>#in#</td>
<td>#out#</td>
<td>#balance#</td>
</tr>
</cfloop>
</table>
正如您所看到的,我确实设置了此代码<cfset balance = 100 + in - out>
。基本上我要做的是获得100的余额的原始值并添加in的值并减去out的值并将其保存为新的余额。
但是,我收到错误The value '' cannot be converted to a number.
。
我已将in和out的值设置为在数据库中浮动。
我哪里错了?
答案 0 :(得分:5)
您需要更新查询以涵盖NULL条件
<cfquery name="getInfo" datasource="testing">
select ISNULL([in], 0) AS [in], ISNULL([out], 0) AS [out]
FROM test
</cfquery>
此外,我在in
和out
周围加上方括号,因为它们看起来可能是关键词
另外考虑在数据库上进行数学运算,可能会获得更好的性能