日期:2014-05-18  浏览次数:20757 次

MDX语句截取前六位字段
SELECT NON EMPTY { [Measures].[CTDJ] } 
  ON COLUMNS, NON EMPTY 
  { ([Dim JLSY].[JLSYKEY].[JLSYKEY].ALLMEMBERS 
  * [Dim Date].[年].[年].ALLMEMBERS 
  * [Dim ORG].[ORGKEY].[ORGKEY].ALLMEMBERS ) } 
  DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS FROM 
  ( SELECT ( STRTOSET(@DimORGORGKEY, CONSTRAINED) ) 
  ON COLUMNS FROM ( SELECT ( STRTOSET(@[DimDate年], CONSTRAINED) ) 
  ON COLUMNS FROM ( SELECT ( { [Dim JLSY].[JLSYKEY].[All] } ) 
  ON COLUMNS FROM [SZAS]))) 
  CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR,
  FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS


在这样一个语句的基础上 我想截取[Dim ORG].[ORGKEY].[ORGKEY].ALLMEMBERS的前六位和传进来的参数进行匹配,但是尝试了一些方法都不能够正确的调试出来,实在没办法了 求高手指教啊。。。新手,上面这个语句是自动生成的

------解决方案--------------------
select substring(@str,charindex('[Dim ORG].[ORGKEY].[ORGKEY].ALLMEMBERS',@str),6)
--try

@str表示你的那个字符串
------解决方案--------------------
你说的那个什么MDX的不懂。你的去对应版块吧
------解决方案--------------------
楼主,还是不一样吧,SQL里就有
SQL code
substring()