对于if else查询,Crystal报表会自动显示舍入值而不是十进制值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于if else查询,Crystal报表会自动显示舍入值而不是十进制值相关的知识,希望对你有一定的参考价值。
我在sql server中创建了一个查询,其中包含if else条件,并使用此查询在sap crystal report中创建报告。
在我的查询中,如果条件包含“<”语句。执行查询时,我得到正确的答案(即带小数点的值),但是当到达报告时,它显示舍入值。最令人困惑的事实是,如果查询首先输入“if”子句,则报告显示舍入值,但不显示其他条件(即,如果查询首先在else条件下输入,则报告显示小数值)。
在第二次尝试中,我将“<=”置于“if”状态。这次报告显示else部分的圆形值和if部分的十进制值。 (在我的查询中没有循环,因此只要输入一次,它就会输入一次)。我想要if和else子句的Decimal值。我该怎么办?
查询:
if(var1<var2) //both variables are in float
begin
select sum(Column1 in float datatype) as Column1
end
else
begin
select sum(Column2 in float datatype) as Column2
end
在执行查询时,结果为22567.91作为列1,但在报告中显示为22568,在另一次尝试执行查询时,结果为5734.51作为列2,报告显示为5734.51。
我想要两次尝试的十进制值。
答案
select case(var1 when(var1> var2)then sum(salary2)end
来自测试组的var1,var2
- 您可以使用案例..我在sql中尝试了相同的查询,其工作正常。如果它没有显示在水晶报告中,那么你可以设置十进制属性。
以上是关于对于if else查询,Crystal报表会自动显示舍入值而不是十进制值的主要内容,如果未能解决你的问题,请参考以下文章