【问题标题】:SSRS how to count with multiple conditions?SSRS如何计算多个条件?
【发布时间】:2018-06-13 19:18:15
【问题描述】:

我是 SSRS 中的表达式新手,希望您能提供帮助!

我需要创建以下内容:

“计数 [issueID],其中 [close] 不为空且 [due_date] 为过去。”

我可以做第一个,但不知道在文本框表达式中添加“...并且 [due_date] 是过去”的语法。

干杯

【问题讨论】:

  • 你可以使用< NOW() ?
  • 直接 SQL 是:SELECT COUNT(issueID) WHERE [closed] IS NOT NULL AND [due_date] < GETDATE() 是,但我猜 SSRS 不知道 GETDATE() 是什么,所以可能是 NOW()NOW 或类似的东西

标签: sql-server visual-studio sql-server-2012 reporting-services-2012


【解决方案1】:

修改数据集源以在数据中返回此标志会更容易。如果你不打算修改你的数据,那么我想你可以......

  1. 将计算字段添加到您的数据集 MyCalc。
  2. 设置计算字段的表达式

    =IIF(!IsNothing(Fields!Closed.Value) && Fields!DueDate.Value

  3. 现在您可以添加类似于

    的表达式

    =IIF(SUM(Fields!MyCal.Value) > 10 , "+10","not + 10")

【讨论】:

  • 太棒了,是的,我可以更改基本存储过程来为此创建一个标志。谢谢你的想法。
【解决方案2】:

你可以试试这个:

select 
count(case when [closed] is not null then [issueID] else 0 end) as 'TotalCount'
from [Your_Table]
where [due_date] <= getdate()

【讨论】:

    猜你喜欢
    • 2020-08-13
    • 2017-12-15
    • 2018-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-18
    • 2019-11-29
    • 1970-01-01
    相关资源
    最近更新 更多