1
我已经在SO一直在寻找的行组最后一个记录,但没有发现任何解决了这个问题SSRS选择使用参数
我为使用SSRS本机模式,我想创建带有过滤器的报告基于参数@idRiskType。
考虑下表:(risktrail)
我创建了一个存储过程来找到所有的客户最后的风险类型,它工作正常。那就是:
CREATE procedure [dbo].[byRisk] @riskType int
as
select c.idCustomer, rsTrail.idRiskType
from customer as c
cross apply
(select top 1 idRiskType
from risktrail
where risktrail.idCustomer = c.idCustomer
order by idTrail desc) as rsTrail
此存储过程outpouts如下:
- 问题:问题是,我不知道如何应用参数@riskType只过滤最后的风险符合参数。 即如果我使用AND运算符在where子句中应用参数,查询将返回与该参数匹配的表中的任何行,但我希望它只返回指示每个客户的最后有效idRiskType的行。
您是否在子查询之外尝试了额外的WHERE? – Schmocken
我不太明白你的意思。根据您的样本数据,您的期望输出是什么? –
您是否试过在最后添加“WHERE rsTrail.idRiskType = @idRiskType”? –