MDX 几个比率问题

用分析服务SSAS解决占比、同比和环比问题 本文将介绍用分析服务SSAS如何解决占比、同比和环比三个指标。 首先理解一下这三个指标的基本概念: 占比是指当前成员的值与该成员父级的值的比率,意思是在总数中所占的比重,比如某水果商店总销售额为14,其中苹果的销售额为2,占比就是14.3%。 同比是指在一个期间内的值与以前某个期间的值进行比较,并用以前期间值的百分比来表示,比如将今年的数据与去年的数据比较或将今年八月的数据与去年八月的数据比 阅读详情

维度配置

view plaincopy to clipboardprint?
<?xml version="1.0" encoding="UTF-8"?> 
 
<Schema> 
 
    <Parameter name="tt" type="Table" /> 
 
    <Parameter name="Company" type="Table" /> 
 
    <Parameter name="Fact" type="Table" /> 
 
 
 
    <Dimension name="tt" caption="时间" table="tt" primaryKey="month" type="Time">   
 
        <Hierarchy>   
 
            <Level name="Year" column="month" type="Years" /> 
 
            <Level name="Month" column="month" type="Months" />   
 
        </Hierarchy>   
 
    </Dimension>   
 
 
 
      
 
    <Dimension name="Company" caption="组织" table="Company" 
 
        primaryKey="FID"> 
 
        <Hierarchy> 
 
            <Level name="Company" column="FID" childColumn="fid" parentColumn="fparentId"> 
 
                <Property name="name" column="fname" /> 
 
            </Level> 
 
        </Hierarchy> 
 
    </Dimension>    
 
 
 
    <Cube name="Fact" caption="收入" table="Fact"> 
 
        <DimensionUsage name="tt" foreignKey="Ftt" /> 
 
        <DimensionUsage name="Company" foreignKey="FCompanyID" />       
 
        <Measure name="famount" caption="金额" column="famount" aggregator="sum" formatString="#,##0.00"/> 
 
    </Cube> 
 
</Schema> 

<?xml version="1.0" encoding="UTF-8"?>

<Schema>

 <Parameter name="tt" type="Table" />

 <Parameter name="Company" type="Table" />

 <Parameter name="Fact" type="Table" />

 

 <Dimension name="tt" caption="时间" table="tt" primaryKey="month" type="Time">

  <Hierarchy>

   <Level name="Year" column="month" type="Years" />

   <Level name="Month" column="month" type="Months" />

  </Hierarchy>

 </Dimension>

 

 

 <Dimension name="Company" caption="组织" table="Company"

  primaryKey="FID">

  <Hierarchy>

   <Level name="Company" column="FID" childColumn="fid" parentColumn="fparentId">

    <Property name="name" column="fname" />

   </Level>

  </Hierarchy>

 </Dimension> 

 

 <Cube name="Fact" caption="收入" table="Fact">

  <DimensionUsage name="tt" foreignKey="Ftt" />

  <DimensionUsage name="Company" foreignKey="FCompanyID" />  

  <Measure name="famount" caption="金额" column="famount" aggregator="sum" formatString="#,##0.00"/>

 </Cube>

</Schema>MDX环比

view plaincopy to clipboardprint?
with member Company.[增长环比] as '((tt.currentmember,measures.famount)-(tt.PrevMember,measures.famount))/(tt.PrevMember,measures.famount)',formatString='0.00%',solve_order=1 select {Company.members,Company.[增长环比]} on rows, tt.members on columns from fact 

with member Company.[增长环比] as '((tt.currentmember,measures.famount)-(tt.PrevMember,measures.famount))/(tt.PrevMember,measures.famount)',formatString='0.00%',solve_order=1 select {Company.members,Company.[增长环比]} on rows, tt.members on columns from fact其它

view plaincopy to clipboardprint?
with member item.[合计] as 'sum(item.levels(0).members)' member measures.[zb] as '(item.currentmember,measures.famount)/(item.[合计],measures.famount)',formatString='0.00%',caption='成本占比%' member measures.[增长率] as '((tt.[2008年6月],measures.famount)-(tt.[2007年6月],measures.famount))/(tt.[2007年6月],measures.famount)',formatString='0.00%',solve_order=2 member measures.[成本占比变化] as '(tt.[2008年6月],measures.[zb])-(tt.[2007年6月],measures.[zb])',formatString='0.00%',solve_order=2 member tt.[同期比] as '0',solve_order=1 select {item.levels(0).members,item.[合计]} on rows,  union(tt.members*{measures.members,measures.[zb]}, {tt.[同期比]}*{measures.[增长率],measures.[成本占比变化]})  on columns from Fact 

with member item.[合计] as 'sum(item.levels(0).members)' member measures.[zb] as '(item.currentmember,measures.famount)/(item.[合计],measures.famount)',formatString='0.00%',caption='成本占比%' member measures.[增长率] as '((tt.[2008年6月],measures.famount)-(tt.[2007年6月],measures.famount))/(tt.[2007年6月],measures.famount)',formatString='0.00%',solve_order=2 member measures.[成本占比变化] as '(tt.[2008年6月],measures.[zb])-(tt.[2007年6月],measures.[zb])',formatString='0.00%',solve_order=2 member tt.[同期比] as '0',solve_order=1 select {item.levels(0).members,item.[合计]} on rows,  union(tt.members*{measures.members,measures.[zb]}, {tt.[同期比]}*{measures.[增长率],measures.[成本占比变化]})  on columns from Fact示例

 

 


本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/redvalley/archive/2008/06/18/2560638.aspx

多维聚合后的数据操作:比率、排名与时序分析实战 多维聚合是OLAP分析的核心能力,指在多个业务维度(如区域、时间、品类)交叉组合下对数据进行汇总计算;其技术价值在于支撑动态钻取、灵活切片和上下文感知的深度分析。区别于单维GROUP BY,多维结果构成“数据立方体”,后续操作必须处理行上下文与筛选上下文的协同关系。典型操作包括比率占比(如区域销售占比)、排名筛选(如Top N城市)、时序比较(如同比/环比)及条件再聚合(如剔除异常订单)。这些能力广泛应用于BI报表、经营分析仪表盘与实时决策系统。本文聚焦Data Manipulation在Multi-Dim 阅读详情

相关推荐

mondrian的个人总结

mondrian的个人总结

qzp1991的专栏 3669

MDX 几个比率问题 原创

   with member [Dim包月时长].[包月时长].[合计] as sum([Dim包月时长].[包月时长].levels(0).members) member measures.[占比] as ([Dim包月时长].[包月时长],[Measures].[短信包月用户数])/([Dim包月时长].[包月时长].[合计],[Measures].[短信包月

jackfor001的专栏 770

一起学习Avalonia(十三)

Avalonia 前面已经简单介绍了一下相关开发,有一个系统的了解。 到今天Avalonia已经基本成熟,但是扩展支持的还是不可能达到大企业的,我估计这也不可能。考虑了下,微软的MAUI框架可能会普及性更高,Avalonia也是我无意间知道的。 微软毕竟是会宣讲的全球。并且微软全球研发投入很大,全部专职开发,这种速度当然大。但是MAUI根据计划,可能还要很长时间,而且是社区支持Linux,估计时间更久。这不能适应现在的国产化开发。 预计一段时间还是需要Avalonia作为优先。当前Avalonia使

jinyuttt的专栏 4086

MDX语言的循环实现

MDX是一种专门为多维数据处理设计的查询语言,它源于SQL,但侧重于多维数据的查询。MDX的核心在于其对数据立方体(Cube)的操作,数据立方体是一种特殊的数据结构,能够方便地进行多维分析。维度(Dimension):表示数据的不同方面,如时间、产品、地区等。度量(Measure):表示用于分析的数据值,如销售额、利润等。成员(Member):维度中的具体值,如某一年、某个产品。层次(Hierarchy):维度中的等级结构,如时间维度中的年、季度、月份。

2501_90231530的博客 758

FastGPT 引申:借鉴 FastGPT 基于MySQL + ES 实现知识库(含表结构以及核心代码)

FastGPT 引申:借鉴 FastGPT 基于MySQL + ES 实现知识库(含表结构以及核心代码)

蜗牛的专栏 3435

别再乱点U盘里的.exe了!手把手教你清除‘Usb Disk.exe’病毒并恢复隐藏文件

本文详细介绍了如何识别和清除U盘病毒(如Usb Disk.exe),并提供从终止病毒进程到恢复隐藏文件的完整步骤。通过禁用自动播放、清理注册表和使用命令行工具,帮助用户彻底清除病毒并预防未来感染,确保数据安全。

weixin_42530732的博客 590

MDX中的通用计算和选择

MDX中的通用计算和选择 一: mdx中的元数据引用函数 CurrentMember,Parent,Ancestor(),PrevMember,NextMember,Lag(),Lead(),PeriodsToDate(),ParallelPeriod(), LastPeriods(),OpeningPeriod(),CloseingPeriod(),Iif()   二:同一层次结构...

kayak2015 462

手把手教你搞定MT6701磁编码器的SSI通信与CRC-6校验(附避坑代码)

本文详细介绍了MT6701磁编码器的SSI通信与CRC-6校验的实现方法,包括硬件连接、时序配置、数据读取和专用CRC-6算法。通过提供避坑代码和常见问题解决方案,帮助开发者快速掌握磁编芯片的调试技巧,确保通信稳定可靠。

weixin_30872337的博客 218

什么是MDX

  以前对于OLAP就一直不时地接触过,但是一般都是使用某种产品的图形界面去设计OLAP的分析模型,然后使用某种图形工具很容易地就能够把数据展示出来,并且根据图形的特点继续做一些数据的下钻等操作,这可能也是大部分人学习OLAP的方式了。当然,学习essbase的人可能会以另一种更加贴近业务操作的方式去查询和分析OLAP服务器里的数据--微软的Excel方式,但是无论是上面的哪种方式

海上Sax风 6268

【Java基础】还看不懂JDK7 HashMap环的产生原理你来打我

JDK7对旧table数据重定位到新table的函数transfer如下,其中重点关注部分以标出。 头插法正常情况下: 并发情况下 线程1只执行了Entry<K,V> next = e.next就被挂起了,而线程2正常执行完毕,结果图如下: 线程1接着下面继续执行: 通过逐步分析跟绘图可以知道红色部分会有环产生。 ...

sowhat 4244

TypeError: XGBClassifier.fit() got an unexpected keyword argument ‘early_stopping_rounds‘ 解决方案

本文主要介绍了TypeError: XGBClassifier.fit() got an unexpected keyword argument 'early_stopping_rounds’解决方案,希望能对使用XGBoost的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

MDX语言的语法

MDX(Multidimensional Expressions,多维表达式)是一种用于查询和操作多维数据的计算语言。它通常与OLAP(Online Analytical Processing,联机分析处理)数据库结合使用,主要用于从多维数据集中检索数据。在现代数据分析应用中,MDX语言因其高效、灵活而受到广泛欢迎。MDX与SQL(结构化查询语言)不同,后者主要用于关系型数据库的操作。MDX的设计初衷是为了简化多维数据的查询过程,使得用户能够更直观地获取和分析数据。

2501_90406373的博客 533

045、镜头模组公差链分析:从 Lens 到 Sensor 的装配公差累积与良率优化

本文深入分析了镜头模组从镜片到传感器各环节的公差累积问题及优化策略。文章首先剖析了四级公差链(镜片单体、镜筒装配、VCM定位、传感器贴装)的误差传递机制,指出各环节典型公差值及其影响(如5微米镜片偏差可导致0.02度光线偏折)。其次对比了最坏情况法与均方根法的差异,强调需考虑公差相关性(如镜片曲率与镜筒间隙的正相关性)。最后提出良率优化"三板斧":通过蒙特卡洛仿真优化公差分配、采用主动对准工艺在线补偿、建立数据反馈闭环系统,并结合"阴阳脸"案例说明如何定位根因(模具磨损+贴片机老化导致的误差叠加)。作者总结

sundong_81的博客 59

MDX语言的算法

MDX是一种专门为多维数据分析而设计的查询语言,与传统的SQL不同,MDX不仅能够处理二维表格数据,还可以处理多维数据模型(如OLAP),并且提供了一种直观的方式来表达数据的维度、度量和层次结构。维度(Dimensions):描述数据的特征,如时间、地点、产品等。度量(Measures):需要分析的数值数据,比如销售额、利润等。成员(Members):维度的具体值,如特定的产品名称、具体的日期等。

2501_91195866的博客 336

Python 爬虫实战:社交媒体(Facebook)评论数据抓取与情感分析

在当今数字化时代,社交媒体平台如 Facebook 已成为人们日常生活中不可或缺的一部分。它不仅是人们分享生活点滴、交流思想的场所,也为企业和研究人员提供了丰富的数据资源。通过分析社交媒体上的评论数据,我们可以了解用户的情感倾向、产品反馈以及社会热点话题等。本文将详细介绍如何使用 Python 爬虫技术抓取 Facebook 上的评论数据,并进行情感分析。这不仅是一次技术实战,更是一次数据探索之旅。

yansideyucsdn的博客 671

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

用MDX计算同比、环比

用MDX计算同比、环比

瞎掰大数据-- 世界的本质是数据,胡侃瞎掰,专注微软大数据解决方案 1837

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

MDX语言的计算机基础

MDX语言是为了解决多维数据查询而设计的,它与SQL(结构化查询语言)不同,MDX专注于多维数据集的查询和分析。MDX最初由微软公司为其SQL Server Analysis Services(SSAS)开发。在多维数据模型中,数据以立方体(Cube)的形式存储,每个立方体由多个维度(Dimension)和度量(Measure)组成。MDX函数可以分为几个类别,包括聚合函数、日期函数和字符串函数等。以下是一些常用MDX函数的介绍。

2501_90195413的博客 465

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

MDX interview

Collection of some of the important type of MDX queries which you should be prepared with. The queries refer to sample SSAS database that comes with SSAS installation. Some of the queries used here...

weixin_34128501的博客 131

MDX语言的数据类型

MDX 是一种强大的查询语言,其数据类型体系为数据信息的提取和分析提供了重要支持。从基本数据类型(如字符串、整数、浮点数、布尔值)到集合数据类型、元组数据类型,再到维度、层次结构、属性等复杂数据结构,MDX 展示了商业智能分析中复杂数据处理的可能性。理解与掌握 MDX 的数据类型,对于提升数据分析的能力与效率至关重要。希望本文的介绍能对您进一步了解与使用 MDX 提供帮助,激发您在数据分析领域的创意与热情。

2501_90181610的博客 527

MDX应用于FoodMart的15个例子

 LISTING 1: Determining Products Sold in Each Statewith set [SoldInUSA] as Filter([Product].[Brand Name].Members, Not IsEmpty( ([USA], [Unit Sales]) )) member [Measures].[SoldInState] as iif( IsE

upwind1982的专栏 1051

MDX Cookbook 11 - 计算 Year Over Year 增长 (同比计算) ParallelPeriod

这一小节主要介绍如何在一个平行期间的度量值,当前值的对比对象是指当前值的上一年,上一个季度或者其它时间级别上与当前值同一时间点上的的那个对象。有一个非常常见的需求就是对比上一年同一个时间点的某个值来判断在现在同期的时候这个值的大小是上升了还是下降了。 先显示基于月份成员的销售额情况 - 使用 PARALLELEPRIOD(Level, N, Member) 先把同比值查询出来,Level ...

weixin_30883311的博客 207

Rate,Percentage,Average in Essbase

I have done a lot of notes about Essbase today. First of all, what is Essbase? It used to be a production of hyperion company. Hyperion is the leader in business performance management software, Brio

Sunny的专栏 404

ssas计算度量_如何在Analysis Services(SSAS)中创建中间度量

ssas计算度量 The whole premise of Analysis Services (SSAS) is to place business logic into a central repository (a database). This central repository should be easy to understand from the average repor...

culuo4781的博客 1144
上一篇: SQL对表进行权限设置
下一篇: MDX 几个比率问题 原创
jackfor001
博客等级 码龄22年 41粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值