SSRS:在参数表达式中使用NOT LIKE

时间:2016-07-04 02:37:17

标签: reporting-services

我有一个使用3个参数的报告:

  • @startDate
  • @EndDate
  • @Brand

@startDate和@endDate参数按预期工作。 @Brand显示为下拉菜单,有两个选项:B和P

当用户选择B时,返回的结果必须与过滤器匹配:LIKE ”%.%” 当用户选择P时,返回的结果必须与过滤器匹配:NOT LIKE “%.%”

我不知道如何让这个过滤器适用于P.

2 个答案:

答案 0 :(得分:3)

我正在寻找这个确切问题的答案,我找不到。我发帖在这里,因为我发现了如何做到这一点。 Btw *是SSRS中的通配符

您的正常LIKE语句的表达式

=iif(variable LIKE "*.*", True, False)

你不喜欢的表达

=iif(NOT(variable LIKE "*.*"), False, True))

答案 1 :(得分:1)

最简单(也是最不优雅)的选项就是在SQL中使用IF语句:

IF @Brand 'B' THEN
   SELECT * FROM Table WHERE Filter LIKE '%.%'
ELSE
   SELECT * FROM Table WHERE Filter NOT LIKE '%.%'