如何在 MDX 查询中使用第三维(ON PAGES 语法)

Posted

技术标签:

【中文标题】如何在 MDX 查询中使用第三维(ON PAGES 语法)【英文标题】:How to use 3rd dimension in MDX query (ON PAGES syntax) 【发布时间】:2008-12-19 10:43:02 【问题描述】:

我在 MDX 查询中遇到第三维问题(在 MS SQL Server 2005 上)。我可以在 Visual Basic 中使用第三维(我在那里有一个立方体,使用浏览器我可以进行 3 个暗淡的查询——由于 ON PAGES)。我通过 MS SQL Profiler 窥探了它(它记录了数据库查询)。但是当我尝试将查询放入 MS SQL SERVER 时,我收到的只有:

正在执行查询... 获取的对象类型:Microsoft.AnalysisServices.AdomdClient.CellSet 格式化。 无法显示具有两个以上轴的单元集的结果。 执行完毕

我尝试了几种不同的方法来实现查询,但这个^答案是来自服务器的唯一答案。

问题是:我需要做什么才能在我的 OLAP 中使用第三个暗淡?

【问题讨论】:

【参考方案1】:

当您使用 SQL Server Management Studio (SSMS) 查询 Analysis Services 时,您会得到一个 ADOMD.NET Cellset 对象。此对象以多维方式表示您的查询结果,在多个轴上布置信息:轴 0 表示列,轴 1 表示行,轴 2 表示页面等。

虽然您的查询在三个轴上可能是正确的,但 SSMS 只能呈现二维结果,因此您会收到错误消息。您需要使用 ADOMD.NET 构建应用程序来使用 cellset,或者使用第三方工具。

【讨论】:

Santiago Cepas:请告诉我,我可以使用什么第三方工具?【参考方案2】:

您说您“将查询放入 MS SQL SERVER”- 您到底是什么意思?您是否尝试过 Analysis Services 附带的多维数据集浏览器?太垃圾了。

我认为问题就像您收到的错误消息一样简单 - “无法显示结果”。换句话说,查看软件可以显示表格(即 2D 信息),但没有显示 3D 信息的方法(无论是在多个表格中,还是其他)。

您需要找到可以更精细地呈现立方体数据的软件。

【讨论】:

以上是关于如何在 MDX 查询中使用第三维(ON PAGES 语法)的主要内容,如果未能解决你的问题,请参考以下文章

使用 Gatsby mdx.slug 的重复页面

MDX 查询:如果与其他维度无关,如何在查询结果中显示虚拟集?

如何从 MDX 查询中提取日期中的月份年份

如何使用 MDX 查询检索内部节点的数据集?

如何评估 MDX 在 OLAP 处理中的性能

MDX 查询 - 如何使用成员属性?