如果我是一个傻瓜,我不会这样做,但我已经大量搜索并尝试了几种选择:无法实现。这是问题所在。
首先,对不起它是法国人。其次,如您所见,字段是"文件编号","年"和#34;不同患者的数量"。
通缉结果:我想过滤2015年和2016年出现的案例编号。
如您所见,某些患者连续几年出现。但是,我想知道有多少人出现在2015年和2016年(不是2014年等)(所以2年的总共2次访问总和)。因此,仅在2015年和2016年对我的数据查询进行过滤,并不能完成这项工作,因为它无法排除仅出现一次的患者。此外,在2015年和2016年过滤,然后Count(Fields!File_number.Value)= 2将无法工作,因为它无法排除2014年可能在这里的患者。
我已经尝试了几个布尔表达式,但是只要我在我的过滤器中包含2年,就会将我的Tablix空白掉。 (可以理解的是,我告诉它Fields!Year.Value必须同时等于2015年和2016年。)
所以我试着绕过它,告诉它并做了以下事情: 表达:
=IIF(Lookup(Fields!FileNumber.Value, Fields!FileNumber.Value, Fields!Year.Value, "Dataset")=2015 AND Lookup(Fields!FileNumber.Value, Fields!FileNumber.Value, Fields!Year.Value, "Dataset")=2016, True, False)
仅适用于1年:只要我将2015年和" AND"添加到2015年或者通过添加一个额外的过滤器,mytable变成空白。
有什么建议吗?谢谢!
答案 0 :(得分:1)
是的,这不是一个容易解决的问题,你不是一个傻瓜:)你对查询中的双布尔表达式是正确的,并且两个组合查找不起作用无论是。在查找的情况下,LOOKUP返回数据集中的第一个匹配,因此每次这两个查找都将返回第一个值。
还有一个名为LookupSet的函数可以从查询中返回所有匹配项。应该可以围绕此函数创建一个丑陋的表达式,以特别测试字符串2015和2016是否都出现在结果中,如下所示:
=Join(LookupSet(Fields!FileNumber.Value, Fields!FileNumber.Value, Fields!Year.Value, "Dataset"),",")
然后子串搜索" 2015"和" 2016" (我会让你摆弄那部分)