KB2430162-修复:当你尝试在 SSA 2008 或 2008 SSAS 中运行 MDX 查询时,出现无法对包含超过4294967296元组的集运行的函数将出现错误消息

Microsoft 将 Microsoft SQL Server 2008 Service Pack 1 (SP1)或 SQL Server 2008 R2 修补程序分发为一个可下载文件。 由于修补程序是累积的,因此每个新版本都包含了以前的 SQL Server 2008 Service Pack 1 (SP1)或 SQL Server 2008 R2 修补程序版本附带的所有修补程序和所有安全修补程序。

请考虑以下情况:

  • 你的多维表达式(MDX)查询满足 Microsoft SQL Server 2008 Analysis Services (SSAS)2008或 Microsoft SQL Server 2008 R2 Analysis Services (SSAS) 2008 R2 中的以下条件:

    • 查询使用交叉结合函数。

    • 查询的表达式具有两个以上的参数集,这些参数集由来自同一维度中不同属性层次结构的元组组成。

    • 这些集由其他维度中的元组组成的另一组分隔。

    • 交叉结合函数的理论结果集通常多于4294967296元组。例如,你有一个包含以下内容的 MDX 查询:

      WITH SET S AS CROSSJOIN([Product].[Large Photo].[Large Photo], [Customer].[Customer].[Customer], [Product].[Product].[Product])SELECT {} ON 0,S.ITEM(1) ON 1FROM [Adventureworks]
  • 您尝试运行查询。

在这种情况下,查询不会运行。 此外,你还会收到以下错误消息:

表达式包含无法对超过4294967296元组的集进行运算的函数。

注意 此类型的 MDX 查询可能由 Excel 数据透视表自动生成。

此问题的修补程序首次在累积更新11中发布。有关如何为 SQL Server 2008 Service Pack 1 (SP1)获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2413738 SQL Server 2008 的累积更新包 11 Service Pack 1 注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 Service Pack 1 (SP1)修复版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

970365 在发布 SQL Server 2008 Service Pack 1 之后发布的 SQL Server 2008 版本

此问题的修补程序首次在累积更新5中发布。有关如何为 SQL Server 2008 R2 获取此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2438347 SQL Server 2008 R2 的累积更新程序包5 注意 由于这些版本是累积的,因此每个新的修复版本都包含了以前的 SQL Server 2008 R2 修补程序版本附带的所有修补程序和所有安全修补程序。 我们建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

981356 发布 SQL Server 2008 R2 后发布的 SQL Server 2008 R2 版本

此问题的修补程序首次发布于 SQL Server 2008 Service Pack 2 的累积更新2。有关此累积更新包的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2467239 SQL Server 2008 的累积更新包2服务包2注意 由于这些版本是累积的,因此每个新的修复版本都包含以前的 SQL Server 2008 修复版本附带的所有修补程序和所有安全修补程序。 Microsoft 建议你考虑应用包含此修补程序的最新修复版本。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

2402659 发布 SQL Server 2008 Service Pack 2 后发布的 SQL Server 2008 版本 为特定 SQL Server service pack 创建 Microsoft SQL Server 2008 修补程序。 必须将 SQL Server 2008 Service Pack 2 修补程序应用到 SQL Server 2008 Service Pack 2 的安装。 默认情况下,SQL Server service pack 中提供的任何修补程序都包含在下一个 SQL Server service pack 中。

若要解决此问题,请使用查询中具有相同维度的两个相邻属性的表达式。 例如,MDX 查询包含以下内容:

WITH SET S AS CROSSJOIN([Product].[Large Photo].[Large Photo], [Product].[Product].[Product], [Customer].[Customer].[Customer])SELECT {} ON 0,S.ITEM(1) ON 1FROM [Adventureworks]

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

你对翻译质量的满意程度如何?

哪些因素影响了你的体验?

是否还有其他反馈?(可选)

谢谢您的反馈意见!

×