[英]Using a count(*) query in SSRS Report
我想在 SSRS 報告數據集中使用查詢作為
Select count(*) from tablename where datefieldname<=ParameterDate
但是,SSRS 只允許對查詢檢索到的字段進行過濾。
誰能告訴我如何將參數過濾器應用於上述查詢並在 SSRS 中使用?
謝謝
我想你想要這樣的東西:
=SUM(IIF(Fields!SOME_DATE.Value <= Paramaters.ParameterDate.Value, 1, 0))
您可以使用 AND 和 OR 在 IIF 中添加其他邏輯。
IIF 會做你的邏輯檢查。 如果滿足您的條件,則返回 1,否則返回 0。
然后,SUM 將 IIF 中所有記錄的所有值相加。
在您的數據集查詢中使用以下內容。
select count(JoiningDate)
from tableName
where JoiningDate <= @parameterDate
and department = @someDepartment
and city like ('%' + @someCity + '%')
以及您需要的任何其他條件。 除非您總是想要相同的部門和城市,否則您將需要其他參數。 可以在運行時更改這些參數以獲得不同的結果。
只要在數據集查詢中完成計數,您就可以計算任何您喜歡的內容,SSRS 不關心您的查詢是什么,只要它有效,它只關心返回的內容。
因此,假設您有 2 個參數@Date
和@Category
那么您的數據集查詢可能只是
SELECT COUNT(*) AS myCount FROM myTable WHERE myDateColumn <= @Date AND myCategoryColumn = @Category
SSRS 只會看到數據集中的myCount
字段,其中包含您所需的數字。
這里的所有都是它的。
我會在原始查詢中選擇您的日期字段,以便它可以用於參數,然后對數據集中的計數列求和而不在 datefieldname 上分組以聚合過濾結果。
select datefieldname, count(*) as date_total
from tablename
where datefieldname<=ParameterDate
group by datefieldname
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.