在MDX语法中,每个对象都可以且必须具有标识符。 这些对象包括财务模型/多维模型、维度、层次结构、级别、成员等等。
常规标识符是符合成为常规标识符的下列格式规则的对象名称。 常规标识符可以和分隔符一起使用,也可以不和分隔符一起使用。 常规标识符的要求如下:
包含由数字,字母,下划线组成
长度不超过80位
字符中以及两头都不允许有空格
标识符一定不能是 MDX 保留关键字。先胜云MDX 中的保留关键字不区分大小写,关于MDX保留关键字,详见《MDX保留关键字》。
常规标识符的示例如下:
With MEMBER Account.profit_margin AS Account.profit/Account.cost
Select {Account.profit, Account.profit_margin} on COLUMNS,
non_empty Descendant(Project.East) on ROWS
From cube_test
Where (Period.1,Year.2021,Measure.Data)
虽然没有要求,但您也可以将分隔符和常规标识符一起使用。 在以下 MDX 语句中,通过使用方括号正确地分隔了常规标识符。
With MEMBER [Account].[profit_margin] AS [Account].[profit]/[Account].[cost]
Select {[Account].[profit], [Account].[profit_margin]} on COLUMNS,
non_empty Descendant([Project].[East]) on ROWS
From [cube_test]
Where ([Period].[1],[Year].[2021],[Measure].[Data])
不符合成为常规标识符的格式规则的标识符必须始终使用方括号 ([]) 进行分隔。 下列情况下需要使用分隔标识符:
包含除数字,字母,下划线之外的其他字符,如汉字,其他标点符号,特殊符号等。
中间包含空格(两头包含空格的标识符,要求自动将两头的空格去除)
当标识符使用了保留关键字。
注意:分隔标识符的主体不允许包含分隔符 “[”和“]”。
Select {[Account].[1001.01], [Account].[1001.02]} on COLUMNS,
non_empty Descendant([Project].[select]) on ROWS
From cube_test
其中,科目1001.01,1001.02因为含有符号“.”,项目select因为使用了关键字select,而cube别名cube test中含有空格,因此需要使用分隔标识符。
回到顶部
咨询热线