sql-server - 使用SQL Server报表生成器执行类似SUMIF的操作

标签 sql-server reporting-services reportbuilder

我正在尝试在SQL Server Report Builder 3.0中产生条件和。

我的表情如下:

=Sum(Iif(Fields!ProjectTypeID.Value=2,Fields!kWp.Value,0))

我希望这个表达式能够产生所有类型2项目的kWp之和。

不幸的是,事实并非如此。而且我似乎无法弄清楚为什么。即使我知道kWp列中有非零值,并且该列不包含空值,它也只会返回0结果。

一位同事确实设法通过替换了
Fields!kWp.Value 


1 * Fields!kWp.Value

但是我们不知道为什么这行得通,因此不能真正相信答案。

我怎样才能使这个条件和表现出来呢?

最佳答案

“kWp”列的数据类型为“十进制”,因此您需要将默认值转换为0.00或将列强制转换为double

 SUM(iif(Fields!ProjectTypeID.Value = 2,cdbl(Fields!kWp.Value),0.00))

关于sql-server - 使用SQL Server报表生成器执行类似SUMIF的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11030273/

相关文章:

sql - 引用表中没有与外键中引用列列表匹配的主键或候选键

sql-server - 是否可以查看 sp_executesql 的代码?是SQL吗?

sql-server - Microsoft SQL Server 2008 R2 索引减慢查询速度

c# - 在 C# 中从数据库生成 PDF 报告,特别是 ASP

reporting-services - SSRS - OutOf MemoryException - 可以显示的行数是否有限制

sql-server - 将来自许多不同数据库的数据整合到一个具有最小延迟的数据中

reporting-services - SSRS 订阅迁移

mysql - 带参数的数据集查询在 Report Builder 中不起作用

google-chrome - 如何让 SSRS 和 Chrome 协同工作?

reporting-services - SSRS : Report Builder: Conditional Formatting in a calculated Text Box