MDX 留在 SSRS 报告查询中
MDX left in SSRS report query
我想使用 LEFT() 从 SSRS 报告中过滤一些产品代码,但我遇到了问题。
这是我的查询:
FROM ( SELECT ( { [Plan type].[Plan type].&[100000002] } ) ON COLUMNS
FROM ( SELECT ( STRTOSET(@ProducersName, CONSTRAINED) ) ON COLUMNS
FROM ( SELECT ( STRTOSET(@CalendarTime, CONSTRAINED) ) ON COLUMNS
FROM ( SELECT ( LEFT([Product].[Product code],3) <> 'ALE') ON COLUMNS --codes that I want to filter out
FROM ( SELECT ( LEFT([Product].[Product code],3) <> 'DBN' ) ON COLUMNS
FROM ( SELECT ( LEFT([Product].[Product code],3) <> 'DBR' ) ON COLUMNS
FROM [Sales]))))))
问题是,我无法让它工作,因为我在那些带有产品代码的 LEFT 上遇到了一些语法错误。休息完美。
你能帮帮我吗?
请从SQL世界出来,这里是MDX。
LEFT([Product].[Product code],3)
没有意义。您需要的可能必须是 LEFT([Product].[Product code].&[foo].membername, 3)
。但是您必须遍历产品代码以仅过滤符合条件的产品代码。
所以下面的 LEFT([Product].[Product code],3) <> 'ALE'
在句法上是正确的。
FILTER([Product].[Product code].MEMBERS AS prd,
LEFT(prd.currentmember.name,3) <> 'ALE'
)
您可以在尾随 AND
子句中包含其他条件。
......FROM(SELECT
FILTER([Product].[Product code].MEMBERS AS prd,
LEFT(prd.currentmember.name,3) <> 'ALE' AND
LEFT(prd.currentmember.name,3) <> 'DBN' AND
LEFT(prd.currentmember.name,3) <> 'DBR'
) ON 0 FROM [Sales]
当然,有更多更好的方法来处理此类要求,但这只是为了说明如何在这种情况下正确进行过滤。
我想使用 LEFT() 从 SSRS 报告中过滤一些产品代码,但我遇到了问题。
这是我的查询:
FROM ( SELECT ( { [Plan type].[Plan type].&[100000002] } ) ON COLUMNS
FROM ( SELECT ( STRTOSET(@ProducersName, CONSTRAINED) ) ON COLUMNS
FROM ( SELECT ( STRTOSET(@CalendarTime, CONSTRAINED) ) ON COLUMNS
FROM ( SELECT ( LEFT([Product].[Product code],3) <> 'ALE') ON COLUMNS --codes that I want to filter out
FROM ( SELECT ( LEFT([Product].[Product code],3) <> 'DBN' ) ON COLUMNS
FROM ( SELECT ( LEFT([Product].[Product code],3) <> 'DBR' ) ON COLUMNS
FROM [Sales]))))))
问题是,我无法让它工作,因为我在那些带有产品代码的 LEFT 上遇到了一些语法错误。休息完美。 你能帮帮我吗?
请从SQL世界出来,这里是MDX。
LEFT([Product].[Product code],3)
没有意义。您需要的可能必须是 LEFT([Product].[Product code].&[foo].membername, 3)
。但是您必须遍历产品代码以仅过滤符合条件的产品代码。
所以下面的 LEFT([Product].[Product code],3) <> 'ALE'
在句法上是正确的。
FILTER([Product].[Product code].MEMBERS AS prd,
LEFT(prd.currentmember.name,3) <> 'ALE'
)
您可以在尾随 AND
子句中包含其他条件。
......FROM(SELECT
FILTER([Product].[Product code].MEMBERS AS prd,
LEFT(prd.currentmember.name,3) <> 'ALE' AND
LEFT(prd.currentmember.name,3) <> 'DBN' AND
LEFT(prd.currentmember.name,3) <> 'DBR'
) ON 0 FROM [Sales]
当然,有更多更好的方法来处理此类要求,但这只是为了说明如何在这种情况下正确进行过滤。