对于if else查询,Crystal报表会自动显示舍入值而不是十进制值

时间:2018-03-01 05:52:56

标签: .net sql-server-2008

我在sql server中创建了一个查询,其中包含if else条件,并使用此查询在sap crystal report中创建报告。

在我的查询中,如果条件包含"<"声明。执行查询时,我得到正确的答案(即带小数点的值),但是当到达报告时,它显示舍入值。最令人困惑的事实是,如果查询进入"如果"首先,报告显示舍入值,但不显示其他条件(即如果查询首先在报告显示的其他条件中输入) 小数值)。

在第二次尝试中我放了"< =" in" 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。

我想要两次尝试的十进制值。

1 个答案:

答案 0 :(得分:0)

选择 情况何时(var1 何时(var1&gt; var2)  总和(薪水2) 端

来自测试 按var1,var2

分组

- 您可以使用案例..我在sql中尝试了相同的查询,其工作正常。如果它没有显示在水晶报告中,那么你可以设置十进制属性。