15个经典的mdx查询

15个经典的mdx查询

ID:18447637

大小:566.50 KB

页数:13页

时间:2018-09-18

15个经典的mdx查询_第1页
15个经典的mdx查询_第2页
15个经典的mdx查询_第3页
15个经典的mdx查询_第4页
15个经典的mdx查询_第5页
资源描述:

《15个经典的mdx查询》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、15个很具代表性的MDX查询语句    读者请求最多的是更多的MDX信息。他们通常要求更多的MDX例子,在这里,我提供15个典型的MDX语句,用的是SQLServer2000AnalysisServices'FoodMart2000samplecubes,以下例子都以Sales多维数据集为例。1.在美国所有州都销售的有那些产品品牌?Listing1创建了个自定义集合SoldInUsa,该集合排除了在整个美国UnitSales为空值的品牌。该查询定义了一个计算成员,描述CurrentState是否

2、销售CurrentProduct;如果有销售返回Yes,否则返回No。这个查询在columns显示States,在Rows显示Produts,单元值区域依据product-state的聚合交集显示Yes或No.   或许你已经发现,该查询会返回的结果同个品牌会返回多次。SalesCube是依据brand来给Products分类的(把产品类别分成不同的品牌),所以如果某品牌生产多种产品,该品牌在层次结构中将多次出现。乍一看,这种重复出现确实是个问题,大概你会把多次出现的同个品牌当成不同的品牌。举个

3、例子,一个公司(对应一个品牌)生产luggage和clothes,作为本例分析,最好将其当成不同品牌来理解,这样才不至于因为其不销售luggage就判断该品牌没有销售(实际情况其可能销售clothes)而导致错误。 LISTING1:DeterminingProductsSoldinEachState说明:查询在所有州都销售的品牌。withset[SoldInUSA]as'Filter([Product].[BrandName].Members,NotIsEmpty(([USA],[UnitSa

4、les])))'member[Measures].[SoldInState]as'iif(IsEmpty(([Product].CurrentMember,[UnitSales],[Customers].CurrentMember)),"No","Yes")'select[USA].childrenonCOLUMNS, [SoldInUSA]onROWSfromSaleswhere([SoldInState])注:Filter返回根据搜索条件对集合进行筛选所得到的集合。例子SELECT{[Mea

5、sures].[StoreSales]}ONCOLUMNS,{filter(time.allmembers,[Measures].[StoreSales]>50000)}ONrowsfromsalesiif返回由逻辑测试确定的两个数值或字符串值之一。例子withmembermeasures.abcas'iif(isempty(measures.[unitsales]),"空了","不空")'SELECT{{{[Time].&[1997]}*{[Measures].[UnitSales],meas

6、ures.abc}}}ONCOLUMNS,{DESCENDANTS([Store].[AllStores],[Store].[StoreName])}ONROWSFROM[Sales]2.所有商店中销售前10名的产品类别有哪些?Listing2直接利用TopCount()函数查询销售前10名的产品。(这是一种最直接的方法,TopCount()函数本身自带排序(降序)的功能) LISTING2:DeterminingTop10ProductCategories说明:查询销售前10名的产品类别 se

7、lect{[UnitSales]}onCOLUMNS, TopCount([Product].[ProductCategory].Members,10,([UnitSales]))onROWSfromSales查询结果展示:yearsmortgagehousing;4.mortgageregistrationformalitiesarecompleted.(D)pledge1.borrower(includingthepledgor)between18-65yearsofage,withfull

8、civilcapacity;2.collateral3.  在美国,刚刚过去的三个季度里都有销售量的食品和饮料有哪些?   (这个查询也可以理解为“过去三个季度里食品和饮料销售量都不为0的产品有哪些?”)。查询Listing3示范了如何动态的确定对应的时间集合—这是一项很有价值的技巧。时间集合动态随着cube数据的更新而改变(也就是说该查询无论你在什么时候执行,无论cube的数据作了多少次更新,结果都是最近三个月的数据)。首先,自定义集合LastQuarter定义了时间维度中有销售记录的最近一个

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。