知识大全 10G技术文档中对MODLE的描述

Posted 度量

篇首语:读书忌死读,死读钻牛角。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 10G技术文档中对MODLE的描述相关的知识,希望对你有一定的参考价值。

10G技术文档中对MODLE的描述  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  概述

  利用 SQL MODEL 子句 您可以根据查询结果定义多维数组 然后将规则应用于该数组以计算新值 这些规则可以是复杂的相互依赖的计算 与外部解决方案相比 通过将高级计算集 成到数据库中 可以大幅度提升性能 可伸缩性以及可管理性 用户可以将数据保留在 Oracle 环境内 而无需将数据复制到单独的应用程序或 PC 电子表格中

  MODEL 子句通过将查询列映射到以下三组来定义多维数组 分区列 维度列和度量列 这些元素执行以下任务

  分区以类似于分析函数的分区方式(在数据仓库指南中标题为 数据仓库中用于分析的 SQL 的一章中有述)来定义结果集的逻辑块 将 MODEL 规则应用于每分区的单元格

  维度用于标识分区内的每个度量单元格 这些列用于标识日期 区域以及产品名之类的特征

  度量类似于星型模式中事实表的度量 它们通常包含数值 例如销售单位或成本 通过指定每个单元格的完整维度组合 可以在单元格所处的分区内对其进行访问

  要针对这些多维数组创建规则 您需要定义以维度值形式表达的计算规则 规则灵活且简洁 并且可以使用通配符和 FOR 循环 以最大限度地表达您的意图 利用 MODEL 子句构建的计算通过将分析集成到数据库中改善了传统的电子表格计算 通过符号引用提高了可读性 并提供了可伸缩性和更好的可管理性

  测试案例:

  按月份得到quantity的累加值

  SQL> with tmp as (

     select Jan Month Quantity from dual

   union

     select Feb from dual

   union

     select Mar from dual

   union

     select Apr from dual

   union

     select May from dual   ) select Month Quantity_count from

   tmp

   model ignore nav /* &keep nav*/

   partition by ( X as x)

   dimension by (Month)

   measures (Quantity as Quantity_count)

   rules

     (Quantity_count[ Jan ]=Quantity_count[ Jan ]   Quantity_count[ Feb ]=Quantity_count[ Jan ]+Quantity_count[ Feb ]   Quantity_count[ Mar ]=Quantity_count[ Feb ]+Quantity_count[ Mar ]   Quantity_count[ Apr ]=Quantity_count[ Mar ]+Quantity_count[ Apr ]

   Quantity_count[ May ]=Quantity_count[ Apr ]+Quantity_count[ May ]

   )

   /

  MONTH QUANTITY_COUNT

  

  Apr

  Feb

  Jan

  Mar

  May

  SQL>

  同样累加值也可以通过下面语句得到

  SQL>

  SQL> with tmp as (

     select Month Quantity from dual

   union

     select from dual

   union

     select from dual

   union

     select from dual

   union

     select from dual   )select t month sum(t quantity) Quantity_count

   from tmp t left join tmp t

     on t month<=t month   group by t month

   order by

   /

  MONTH QUANTITY_COUNT

  

  

  

  

  

  

  SQL>

  其中指定ignore nav&keep nav处理NULL度量和缺失单元格

  更多说明及案例请参考ORACLE官方说明

cha138/Article/program/Oracle/201311/16907

相关参考

知识大全 10g树形查询新特性

  在g中Oracle提供了新的伪列CONNECT_BY_ISCYCLE通过这个伪列可以判断是否在树形查询的过程中构成了循环这个伪列只是在CONNECTBYNOCYCLE方式下有效  这一篇描述一下解

我国古代如何描述伤寒?

伤寒是一种古老的疾病的。我国有关伤寒记载的书有很多。最早是在公元前三世纪《内经.素问》中。汉.张仲景在《伤寒论》一书中对发热性疾病指为“伤寒”。明代的《瘟疫论》书中将“伤寒”与感冒加以区分等。

知识大全 Delphi中对Oracle存取RTF文档

Delphi中对Oracle存取RTF文档  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  关系数

知识大全 用Oracle10g列值掩码技术隐藏敏感数据

用Oracle10g列值掩码技术隐藏敏感数据  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Or

知识大全 如何用Oracle10g列值掩码技术隐藏敏感数据

如何用Oracle10g列值掩码技术隐藏敏感数据?  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 如何利用oracle10g的列值掩码技术隐藏

  Oracle的虚拟私有数据库特性(也称作细颗粒度存取控制)对诸如SELECT等数据管理语言DML语句提供行级安全性检查PL/SQL策略函数和某个数据表相关联这个函数可以检查当前用户的上下文背景并添

随着科技的发展,人们已经可以利用基因技术通过生物工程创造出新的物种。以下选项中对这种现象的理解正确的是

随着科技的发展,人们已经可以利用基因技术通过生物工程创造出新的物种。以下选项中对这种现象的理解正确的是_____。A、新物种产生于人的意识B、人们可以创造物质C、意识具有能动地改造世界的能力和作用D、

生活污水处理中对生物转盘的成功应用

本文从生物转盘技术中最基本的处理原理和特点为研究的出发点,综合论述了生物转盘技术在处理生活污水和一些其他的工业废水中的应用情况,并且分析了生物转盘中影响处理的几个原因。经过一系列的实验数据和研究成果,

生活污水处理中对生物转盘的成功应用

本文从生物转盘技术中最基本的处理原理和特点为研究的出发点,综合论述了生物转盘技术在处理生活污水和一些其他的工业废水中的应用情况,并且分析了生物转盘中影响处理的几个原因。经过一系列的实验数据和研究成果,

生活污水处理中对生物转盘的成功应用

本文从生物转盘技术中最基本的处理原理和特点为研究的出发点,综合论述了生物转盘技术在处理生活污水和一些其他的工业废水中的应用情况,并且分析了生物转盘中影响处理的几个原因。经过一系列的实验数据和研究成果,