基本概念:
成员:属于维度,描述CUBE的维度
元组:来自CUBE的数据切片.成员向导
集合:由0,1,多个成员组成.代表范围,不代表值.
MDX语句基本格式:
WITH
MEMBER ……
…….
SET ……
…….
SELECT {……} ON COLUMNS,
{……} ON ROWS
FROM CUBENAME
WHERE (……)
维度描述:
[地理维度]:
所有地理维度北京S1
S2
上海S3
S4
[措施维度]:
所有措施维度措1C1
C2
措2C3
C4
[时间维度]:
20071月
2月
3月
4月
TABLE1
所有地理维度
1月
SELECT {[地理维度].[所有地理维度]} ON COLUMNS,
{[时间维度].[1月]} ON ROWS
FROM [CUBENAME]
TABLE2
S1
1月
SELECT {[地理维度].[S1]} ON COLUMNS,
{[时间维度].[1月]} ON ROWS
FROM [CUBENAME]
TALBE3
S1S2S3
1月
SELECT {[地理维度].[S1], [地理维度].[S2], [地理维度].[S3]} ON COLUMNS,
{[时间维度].[1月]} ON ROWS
FROM [CUBENAME]
TABLE4
上海
1月
SELECT {[地理维度].[上海]} ON COLUMNS,
{[时间维度].[1月]} ON ROWS
FROM [CUBENAME]
WITH MEMBER [地理维度].[AA] AS ‘SUM({S1,S2})’
SELECT {[地理维度].[AA]} ON COLUMNS,
{[时间维度].[1月]} ON ROWS
FROM [CUBENAME]
TABLE5
C3做切片
S1S2
1月
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{[时间维度].[1月]} ON ROWS
FROM [CUBENAME]
WHERE ([措施维度].[C3])
TABLE6
S1S2
1月
3月
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{[时间维度].[1月], [时间维度].[3月]} ON ROWS
FROM [CUBENAME]
TABLE7
S1S2
1月C1
3月C1
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{{[时间维度].[1月], [时间维度].[3月]}*{[措施维度].[C1]}} ON ROWS
FROM [CUBENAME]
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{([时间维度].[1月], [措施维度].[C1]),( [时间维度].[3月], [措施维度].[C1])} ON ROWS
FROM [CUBENAME]
TABLE8
S1S2
1月C1
1月C2
3月C1
3月C2
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{{[时间维度].[1月], [时间维度].[3月]}*{[措施维度].[C1], [措施维度].[C2]}} ON ROWS
FROM [CUBENAME]
TABLE9
M表示度量值
S1S2
M1M2M1M2
1月C1
C2
3月C1
C2
SELECT {{[地理维度].[S1],[地理维度].[S2]}*{[MEASURES].[M1], [MEASURES].[M2]}} ON COLUMNS,
{{[时间维度].[1月], [时间维度].[3月]}*{[措施维度].[C1], [措施维度].[C2]}} ON ROWS
FROM [CUBENAME]
TABLE10
M1M2
1月北京C1
C2
上海C1
C2
3月北京C1
C2
上海C1
C2
SELECT {[MEASURES].[M1],[MEASURES].[M2]} ON COLUMNS,
{{[时间维度].[1月],[时间维度].[3月]}*{[地理维度].[北京],[地理维度].[上海]}*{[措施维度].[C1],[措施维度].[C2]}} ON ROWS
RROM [CUBENAME]
TABLE11
S1S2S2-S1
1月
3月
WITH
MEMBER [地理维度].[AA] AS ‘[地理维度].[S2]-[地理维度].[S1]’
SELECT {[地理维度].[S1],[地理维度].[S2],[地理维度].[AA]} ON COLUMNS,
{[时间维度].[1月],[时间维度].[3月]} ON ROWS
FROM [CUBENAME]
TABLE12
S1S2
1月
3月
WITH
SET [SETA] AS ‘{[时间维度].[1月],[时间维度].[3月]}’
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{[SETA]} ON ROWS
FROM [CUBENAME]
TABLE13
S1S2
1月100102
3月160156
WITH
MEMBER [MEASURES].[AA] AS ‘IIF(MEASURES.M1>156,1,0)’
SELECT {[地理维度].[S1],[地理维度].[S2]} ON COLUMNS,
{[SETA]} ON ROWS
FROM [CUBENAME]
WHRER ([MEASURES].[AA])
IIF(MEASURES.M1>156,”T”,”F”)
参数是字符串得加双引号.
排序函数ORDER({[地理维度].[S1],[地理维度].[S2]},S1,BDSC)
维度聚合属性分类:
COUNT,SUM,MAX,MIN,DISTINCTCOUNT
CURRENTMEMBER代表当前的的成员函数.
MDX函数如果没有参数的话,是不应该加括号的.比如CURRENTMEMBER.
在许多情况下,一些文字性的内容并非成员的数据,但为了显示其内容,我们一般定义为成员的属性,为了在
查询中使用!比如[Customers]维,其性别、住址、电话可能就是成员的属性,在MDX查询中,我们既想查询数
据量,如销售数量、销售金额,也想查询客户的信息,如性别、住址、电话等。MDX提供了几种方法来获取成员
的属性。
1)DIMENSION PROPERTIES
select
{[Measures].MEMBERS} on columns,
{[Customers].[All Customers].[USA].[CA].[Altadena].children}
DIMENSION PROPERTIES [Customers].[name].Gender,[Customers].[name].Address
on rows
from Sales
可以查询客户的性别和地址属性。
备注:在MDX例子应用中查询语法正确,数据无法显示,是否要通过ADOMD等才能正确获取??
2)Properties 函数
WITH
MEMBER [Measures].[Gender] AS
'[Customers].CurrentMember.Properties("Gender")'
MEMBER [Measures].[Address] AS
'[Customers].CurrentMember.Properties("Address")'
select
{ [Measures].[Gender], [Measures].[Address],[Measures].MEMBERS} on columns,
{[Customers].[All Customers].[USA].[CA].[Altadena].children} on rows
from Sales
在MDX显示客户性别、地址以及销售金额等信息。
备注:在MDX例子应用中数据正常显示。
分享到:
相关推荐
MDX赋值语句词法分析器是针对MDX中的赋值操作进行解析的关键工具,它能帮助理解并处理包含四则运算的复杂表达式。在MDX中,赋值语句通常涉及到对维度成员的赋值,这些成员可能来自多维数据集的不同层面。 词法分析...
### OLAP的MDX语句运用详解 #### 一、OLAP与MDX简介 - **OLAP(Online Analytical Processing)**:联机分析处理,是一种数据仓库环境中的数据分析技术,提供快速、灵活的数据访问能力,以支持复杂的分析操作,并...
《 Mondrian解析MDX成SQL语句的分析与整理》 在数据分析领域,多维数据集(Multidimensional Datasets)的查询语言MDX(MultiDimensional eXpressions)是处理OLAP(Online Analytical Processing)操作的重要工具...
MDX查询语句的构造涉及这些基本对象,集合通常放在轴(axes)上展示,构成一个多维数据的可视化布局。标准的MDX查询语法大致如下: ```mdx SELECT <Set_1> ON 0, <Set_2> ON 1 FROM WHERE ``` 其中,`<Set_1>`和`...
多维表达式(MDX)语句多用于实现对海量数据的多维分析,如何对MDX语句的执行过程进行优化,进而提高查询速度是构建在线分析处理系统的一个难点。该文采用预建实例化视图的方法,使得原先基于事实表和维表的多表连接...
6. **MDX查询(Queries)**:使用MDX语句来选择、过滤、聚合立方体中的数据,如`SELECT [Measures].[Sales] ON COLUMNS, [Time].[Year].[2022] ON ROWS FROM [SalesCube]`。 7. **切片与骰子(Slicing & Dicing)**:...
本课程主要介绍MDX语句的作用和使用规则,并简要介绍MDX语句与SQL语句的不同之处,以及MDX语句相较SQL语句的优势和特点。同时,通过一个鞋服行业BI项目的实施案例,针对该行业的数据特点,以及客户的特殊要求,讲解...
MDX 脚本编写语句 MDX 数据定义语句 MDX 数据操作语句 MDX 运算符参考 --(注释) -(排除) -(负) -(减) *(叉积) *(乘) /(除) ^(幂) /*...*/(注释) //(注释) :(范围) +(加) +(正) +(字符串...
Microsoft SQL Server 2005 Analysis Services (SSAS) 允许在多维表达式 (MDX)...函数可以在任何有效的 MDX 语句中使用,并且经常用于查询、自定义汇总定义以及其他计算。本节介绍 Analysis Services 附带的 MDX 函数。
数据部分则提供了运行这些示例所需的多维数据模型,可能包含模拟业务场景的销售、财务等数据,以便读者在实际环境中测试和验证MDX语句。 MDX的基础知识包括以下几个关键点: 1. **基础语法**:MDX语句由维度、层次...
4. 创建MDX文件:使用专门的工具将整理好的数据生成MDX文件,这个过程中会进行索引构建,提高检索速度。 转换工具的主要功能有: 1. MDX转TXT:将MDX文件解析成TXT文档,保留原有的词汇和信息,便于用户查看或编辑...
在MDX(多维表达式)中,动态参数跳转是一种常见的需求,特别是在构建数据分析应用时,用户可能需要根据不同的条件或选择跳转到不同的页面。以下是对标题和描述中涉及的知识点的详细说明: 1. **MDX(多维表达式)*...
《剑桥高阶英英与路透金融英语:深度解析mdx及电子词典应用》 在当今数字化时代,学习工具的创新不断推动语言学习的进步。提到“剑桥高阶英英”和“路透金融英语”,这两大权威的英语学习资源已经不再局限于传统的...
这本"MDX 入门教材"显然是为初学者设计的,旨在教授MDX的基础概念、语法以及如何通过MDX语句进行多维数据操作。 MDX在数据库领域扮演着重要角色,尤其是对于那些需要深度分析大量复杂数据的企业而言。它提供了一种...
- **选择器**:`SELECT`语句是MDX中最常用的查询语句,用于选择多维数据集中的数据。例如,`SELECT {[Measures].[Sales Amount]} ON COLUMNS, {[Product].[Category].ALLMEMBERS} ON ROWS FROM [Sales]`这一语句...