MDX StrtoMember 和 Strtoset 区别

StrtoMember : string to memeber ,返回字符串表达式中指定的成员,

Strtoset:  string to set 返回字符串表达式中指定的集

下面是几个例子的写法

1.1、{strtomember(‘[组织架构维度].[上级组织].&[2]‘)}

1.2、{strtoset(‘{[组织架构维度].[上级组织].&[2]}‘)}

1.1 和 1.2 加入到完整的MDX中,执行出来的结果是一致的,1.1和1.2也是这两个函数最原始的用法。

--------------------------------------分割----------------------------------

2.1、strtoset(‘{[组织架构维度].[上级组织].&[2].children}‘)

2.2、{strtomember(‘[组织架构维度].[上级组织].&[2]‘).children}

基于上述取子集,在完整的MDX 中,以上两个执行出来的结果是也是一致的。

-------------------------------------------------------------------------

1.1 和1.2

2.2.1、strtoset(‘{[组织架构维度].[上级组织].&[2],[组织架构维度].[上级组织].&[4]}‘)

2.2.2、strtoset(‘{[组织架构维度].[上级组织].&[2].children,[组织架构维度].[上级组织].&[4].children}‘)

2.2.1 和 2.2.2 strtomember是不支持上面的写法,

-----------------------------------------------------------

对参数的操作:

Strtomember 可以直接作用到@StrParas,@StrPara 是个字符串,@Paras 是个集合{0,1,2} 最少包含一个,StrtoSet 对参数  @Paras 取子成员是不能直接操作的,类似 Strtoset(@Paras).Children 的写法是错误。

3.1、StrtoMember(@StrPara)

3.2、StrtoMember(@StrPara).children

3.3、 Strtoset(@Paras)

关于这两个函数的性能,没有过多研究,这方面的资料本身不多,只能一点点在学习中,将自己疑惑的地方都写出来分享下。

MDX StrtoMember 和 Strtoset 区别

时间: 2024-11-10 00:54:00

MDX StrtoMember 和 Strtoset 区别的相关文章

SSAS中CUBE行权限数据级权限控制

原文:SSAS中CUBE行权限数据级权限控制 去年做了一个数据仓库的项目,其中涉及到了CUBE数据级权限的控制.在网上找这方面的资料,找到一个[BI] 通用数据级权限控制解决方案的实现(二):Cube中的角色设置与数据级权限控制.根据这个大牛的思路,做完之后发现有几个问题: 1. 传递给CUBE的用户必须是域用户或者数据库服务器WINDOWS用户.如果BI系统不是用的AD域认证而是传统的FORM认证,那么,BI里的用户需要对应一个WINDOWS用户. 2. 另外的WEB程序里保存对cube的角色

BI-学习之 新概念介绍

什么是统一维度模型 层次结构.级别.成员和度量值 什么是MDX MDX与SQL的区别 什么是数据仓库 什么是OLAP数据分析引擎 BI企业级解决方案 什么是统一维度模型 维度(dimension)是描述事实数据表中的数据级别的有组织的层次结构 统一维度模型(UDM) 的作用是在用户和数据源之间搭建一座桥梁.UDM 通过一个或多个物理数据源构造而成,最终用户可以使用多种客户端工具之一(如Microsoft Excel)来对UDM 发出查询. 层次结构.级别.成员和度量值 关系数据库以二维平面表的形

MDX中Filter 与Exist的区别

  获得一个集合,这个一般用来筛选出一个自定义的set,比如在中国的餐厅 该set返回所有MSDNteam下并且在Fact Thread度量上有记录的products 用Exists实现 select Exists( [Dim Queue].[Product - Queue].MEMBERS, [Dim Engineer].[Team - Engineer].[Team Name].&[MSDN], "Fact Thread" ) on 0 from Palladium 用Fi

MDX查询语句

1.排名+排序+量值过滤: WITH member [Measures].[排名] AS IIF (ISEMPTY ([终端销售数量]), NULL , RANK ([货品].[品牌]. CurrentMember, ORDER (AddCalculatedMembers([货品].[品牌].CurrentMember.Siblings), [终端销售数量], DESC )) ) SELECT {[Measures].[终端销售数量],[Measures].[排名]} ON 0, non emp

[译]SSRS 编写带参数的MDX报表

编写MDX报表长久以来对于报表人员来说都比较痛苦. 当然如果你用查询设计器(Query Designer) 直接拖拉数据集那就很方便,但是你们有没有想过查询设计器是怎么创建MDX的.或者创建的参数是如何工作的? 我听到很多用Analysis Services 作为数据源的(包括我)报表人员说写参数太难了,所以他们用查询设计器做报表. 我想关键的问题是查询设计器做的MDX看起来要比实际上更复杂.如果你知道一些MDX基础,你应该能直接写MDX而不是用查询分析器 ,你就是喜欢用查询分析器也没关系.本文

[转]托管DirectX,从MDX到SlimDX的转换

开始迁移到托管DirectX SlimDX框架的,例如,MDX应用的帕特里克Murrisa地形的浏览器. 在托管DirectX代码所示,到新的代码,与SlimDX评论的形式. MDX迁移项目中SlimDX 图书馆设置SlimDX“ 下载并安装“ 2010年2月SlimDX SDK(微星). “. 添加一个引用到项目中.NET库“C:\ Program Files文件\ SlimDX SDK(2010年2月)\ BIN \ X86 \ SlimDX.dll. 如果你添加了一个链接的添加引用对话框中

SSIS 系列 - 平面文件格式的区别(Delimited,Fixed width,Ragged Right, Fixed width ...)

SSIS 中处理文件,一般在描述输出平面文件格式的时候通常会出现以下几种选项 - Delimited - 默认输出列使用逗号分隔,也可以选择其它的诸如 | ,或者 Tab 等. Fixed Width - 列定长输出,固定长度,但不换行. Fixed Width with row delimiters - 其实就相当于 Ragged right,只不过换行符 CR+LF 的位置不同,这个是新的一列显示一个换行符. Ragged right - 和上面的这个格式区别就是 CR+LF 换行符处于最后

Nginx 反代参数:$X-Real-Ip和$X-Forwarded-For的区别

## \$X-Real-Ip和$X-Forwarded-For的区别 标签(空格分隔): nignx 负载均衡 client-ip --- ####1.如果只有一层代理,这两个头的值就是一样的####2.多层代理> * X-Forwarded-For:  header包含这样一行        `*X-Forwarded-For: 1.1.1.1, 2.2.2.2, 3.3.3.3*`> * X-Real-Ip:没有相关标准,上面的例子,如果配置了X-Read-IP,可能会有两种情况`// 最

C#中Convert和parse的区别

Convert.ToInt32()与int.Parse()的区别(1)这两个方法的最大不同是它们对null值的处理方法: Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常. 没搞清楚Convert.ToInt32和int.Parse()的细细微区别时千万别乱用,否则可能会产生无法预料的结果,举例来说:假如从url中取一个参数page的值,我们知道这个值是一个int,所以即可以用Convert.ToInt32(Request.Que