惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
雷峰网
雷峰网
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Spread Privacy
Spread Privacy
H
Hacker News: Front Page
PCI Perspectives
PCI Perspectives
Webroot Blog
Webroot Blog
罗磊的独立博客
H
Heimdal Security Blog
TaoSecurity Blog
TaoSecurity Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
大猫的无限游戏
大猫的无限游戏
月光博客
月光博客
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Google Online Security Blog
Google Online Security Blog
Last Week in AI
Last Week in AI
美团技术团队
Help Net Security
Help Net Security
The Hacker News
The Hacker News
C
Cisco Blogs
T
The Blog of Author Tim Ferriss
J
Java Code Geeks
The Register - Security
The Register - Security
IT之家
IT之家
WordPress大学
WordPress大学
Jina AI
Jina AI
Recent Commits to openclaw:main
Recent Commits to openclaw:main
H
Help Net Security
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
Threat Research - Cisco Blogs
P
Proofpoint News Feed
NISL@THU
NISL@THU
爱范儿
爱范儿
The GitHub Blog
The GitHub Blog
Scott Helme
Scott Helme
V
Vulnerabilities – Threatpost
B
Blog
T
Tenable Blog
博客园 - 三生石上(FineUI控件)
T
The Exploit Database - CXSecurity.com
S
Security Affairs
小众软件
小众软件
Hacker News: Ask HN
Hacker News: Ask HN
Security Latest
Security Latest
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
W
WeLiveSecurity
A
Arctic Wolf
L
LINUX DO - 热门话题
Google DeepMind News
Google DeepMind News
M
MIT News - Artificial intelligence

博客园 - 寒天飞雪

项目中用到Excel上传到Sql数据库 转载: 房贷的两种还款方式介绍 RFC访问SAP(C#) VB.net连接SAP实例(vb.net写法) VB.net连接SAP实例 - 寒天飞雪 - 博客园 Winform 树型菜单例子 - 寒天飞雪 - 博客园 介绍: MRP和MPS 收藏: SQLServer的存储结构 转载: 正则表达式介绍 .net 连接ORACLE 数据库的例子 - 寒天飞雪 转载: ReportViewer : RDLC自定义工具栏 C#调用iTextSharp组件生成PDF文件, 在VS2005下已经调试通过! SQLSERVER 2005 BI的帮助文档说明: 9.2 定义和浏览翻译 9.1 定义和浏览透视 8.1 定义操作 7.1 定义关键指标KPI 6.3使用脚本命令定义作用域分配 6.1 定义计算成员
6.2 定义命名集
寒天飞雪 · 2008-05-30 · via 博客园 - 寒天飞雪

定义命名集:

命名集是可返回一组维度成员的多维表达式 (MDX)。可以定义命名集,并将它们另存为多维数据集定义的一部分;还可以在客户端应用程序中创建命名集。通过合并多维数据集数据、算术运算符、数字和函数,可以创建命名集。命名集可以由用户在客户端应用程序的 MDX 查询中使用,还可以用来定义子多维数据集中的集合。子多维数据集是交叉联接集的集合,它将多维数据集空间限制为随后语句的定义的子空间。定义受限的多维数据集空间是 MDX 脚本的一个基本概念。本课程的下一个主题将讨论 MDX 脚本。

命名集简化了 MDX 查询,并为复杂、常用的集表达式提供了有用的别名。例如,可以定义名为“大型分销商”的命名集,用来包含有最多雇员的“分销商”维度的成员集合。然后,最终用户可以在查询中使用“大型分销商”命名集,您也可以使用该命名集来定义子多维数据集中的集合。命名集定义存储于多维数据集中,但它们的值只存在于内存中。若要创建命名集,请使用多维数据集设计器的“计算”选项卡上的“新建命名集”命令。有关详细信息,请参阅计算、定义命名集。

在此主题的任务中,将定义两个命名集:“核心产品”命名集和“大型分销商”命名集。

定义“核心产品”命名集

定义“核心产品”命名集

  1. 切换到 Analysis Services Tutorial 多维数据集的多维数据集设计器的“计算”选项卡,再单击工具栏上的“窗体视图”

  2. 单击“脚本组织程序”窗格中的“[所有产品的总销售额比率]”,然后在“计算”选项卡的工具栏上单击“新建命名集”

    “计算”选项卡上定义新计算时,请记住,计算的解析是按它们出现在“脚本组织程序”窗格中的顺序来进行的。在创建新计算时该窗格中的焦点确定了计算的执行顺序;新的计算将定义于紧靠有焦点的计算之后。

  3. “名称”框中,将新命名集的名称更改为 [Core Products]

    “脚本组织程序”窗格中,注意用于将命名集与脚本命令或计算成员区分开来的唯一图标。

  4. “计算工具”窗格中的“元数据”选项卡上,依次展开“产品”“类别”“成员”“所有产品”

如果无法在“计算工具”窗格中查看任何元数据,请在工具栏上单击“重新连接”。如果该操作失败,则可能必须处理多维数据集,或启动 Analysis Services 实例。
  1. “自行车”拖到“表达式”框中。

    现在,您已经创建一组表达式,它将返回“产品”维度内的“自行车”类别中的成员集合。

    下图显示在此过程中创建的命名集的“计算表达式”窗格。

定义“大型分销商”命名集

定义“大型分销商”命名集

  1. “脚本组织程序”窗格中右键单击[核心产品],再单击“新建命名集”

  2. “名称”框中,将此命名集的名称更改为 [大型分销商]

  3. “表达式”框中键入 Exists()

    您将使用 Exists 函数来从“大型分销商”属性层次结构返回成员集合,而“分销商名称”属性层次结构将与有最大雇员数的“雇员数”属性层次结构中的成员集合交互。

  4. “计算工具”窗格中的“元数据”选项卡上,展开“分销商”维度,再展开“分销商名称”属性层次结构。

  5. “分销商名称”级别拖到 Exists 集表达式的括号中。

    将使用 Members 函数来返回此集合的所有成员。相关主题:Members(集)(MDX)

  6. 在部分集表达式之后键入句号,再添加 Members 函数。表达式应该如下显示:

    复制代码
    Exists([Reseller].[Reseller Name].[Reseller Name].Members)

    既然已经为 Exists 集表达式定义了第一个集合,现在可以开始添加第二个集合,即包含最大雇员数的“分销商”维度的成员集合。

  7. “计算工具”窗格中的“元数据”选项卡上,依次展开“分销商”维度中的“雇员数目”“成员”“所有分销商”

    注意,此属性层次结构的成员没有分组。

  8. 打开“分销商”维度设计器,然后在“属性”窗格中单击“雇员数目”

  9. 在“属性”窗口中,将 DiscretizationMethod 属性更改为“自动”,再将 DiscretizationBucketCount 属性更改为 5相关主题:对属性成员分组(离散化)

  10. 在 Business Intelligence Development Studio 的“生成”菜单上,单击“部署 Analysis Services 教程”

  11. 成功完成部署后,切换到 Analysis Services Tutorial 多维数据集的多维数据集设计器,然后在“计算”选项卡的工具栏上单击“重新连接”

  12. “计算工具”窗格中的“元数据”选项卡上,依次展开“分销商”维度中的“雇员数目”“成员”“所有分销商”

    注意,此属性层次结构的成员现在包含于编号为 0 到 4 的五个组中。若要查看组的编号,请将指针暂停在组上,以查看 InfoTip。之所以对此属性层次结构的成员进行分组,是因为 DiscretizationBucketCount 属性设置为 5,并且 DiscretizationMethod 属性设置为“自动”

  13. “表达式”框中,在 Exists 集表达式中的 Members 函数之后和右括号之前添加逗号,再将 83 - 100“元数据”窗格拖放到逗号之后。

    现在,将“大型分销商”命名集放在轴上时,您已经完成了将会返回与两个指定集合(所有分销商集合和有 83 到 100 名雇员的分销商集合)交互的成员集合的 Exists 集表达式。

    下图显示 [大型分销商] 命名集的“计算表达式”窗格。

  14. “计算”选项卡的工具栏上,单击“脚本视图”,然后检查刚才添加到计算脚本中的两个命名集。

  15. 在计算脚本中紧靠第一个 CREATE SET 命令之前添加新行,然后在脚本中独立的行上添加以下文本:

    复制代码
    /* named sets */

    现在,您已经定义了两个命名集,它们已显示在“脚本组织程序”窗格中。现在,您可以部署这两个命名集,然后在 Analysis Services Tutorial 多维数据集中浏览这些度量值。

使用新的命名集浏览多维数据集

使用新的命名集浏览多维数据集

  1. 在 BI Development Studio 的“生成”菜单上,单击“部署 Analysis Services 教程”

  2. 在已成功完成部署后,单击“浏览器”选项卡,再单击“重新连接”

  3. “数据”窗格中删除所有层次结构和度量值。

  4. “分销商销售-销售额”度量值添加到数据区域,再将“产品类别”用户定义层次结构添加到行区域。

    注意,只会出现类别属性的一个成员。这是因为先前已在此会话中使用该属性作为筛选器。如果在新会话中工作,将显示所有成员。

  5. 选择“行”区域中“类别”旁边的下拉键头,然后选中“(全部)”级别旁边的复选框,以选择此级别(如果尚未选择它)的所有成员,再单击“确定”

  6. 展开“自行车”以查看“子类别”级别的成员,如下图所示。

  7. “元数据”窗格中的“产品”维度内,右键单击“核心产品”,并选择“添加到子多维数据集区域”

    注意,只有“类别”属性的“自行车”成员和“自行车”子类别的成员会留在多维数据集中。这是因为“核心产品”命名集用来定义子多维数据集,该子多维数据集的属性将出现在位于“数据”窗格上面的“筛选器”窗格中。此子多维数据集使得它包含的“产品”维度中的“类别”属性的成员仅限于“核心产品”命名集的那些成员,如下图所示。

  8. “元数据”窗格中,展开“分销商”,右键单击“大型分销商”,然后单击“添加到子多维数据集区域”

    注意,“数据”窗格中的“分销商销售额”度量值只显示大型自行车分销商的销售额。还要注意,“筛选器”窗格现在显示用来定义此特定子多维数据集的两个命名集,如下图所示。