如何从SQL Server中的MDX查询中选择限制结果集 [英] How do I select limit the result set from an MDX Query in SQL Server

查看:106
本文介绍了如何从SQL Server中的MDX查询中选择限制结果集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在为SQL Server 2008编写MDX查询,并且正在尝试查看来自2维交叉连接的数据。可能有太多数据要显示结果,所以我只想返回前10个结果。我怎么能这样做?



当前查询



 选择 {[Measures]。[Measure1],[Measures]。[Measure1],[Measures]。[Measure1]}  on  columns,
crossjoin([Dimension]。[Dimension]。[Dimension]。& [ 123 ],[Dimension2]。[Dimension2] 。[Dimension2])
来自 [多维数据集名称]





我的查询应该是什么样的?

解决方案

使用 TopCount() [ ^ ]功能。请记住,必须已使用订单(MDX) [ ^ ]功能。







 选择 
{
[Measures]。[Measure1],[Measures]。[Measure1]
,[Measures]。[Measure1]
}
on 列,
topcount(
crossjoin(
[Dimension]。[Dimension]。[Dimension]。& [ 123 ]
,[Dimension2]。[Dimension2]。[Dimension2]

10


来自 [多维数据集名称]


I'm writing an MDX query for SQL server 2008 and are trying to look at the data from a crossjoin of 2 dimensions. There is probably too much data to display the result so I just want to return the top 10 results. How can i do this?

Current Query

select {[Measures].[Measure1], [Measures].[Measure1], [Measures].[Measure1]} on columns, 
crossjoin([Dimension].[Dimension].[Dimension].&[123], [Dimension2].[Dimension2].[Dimension2])  on rows
from [Cube name]



What Should my query look like?

解决方案

Use the TopCount()[^] function. Remember, the set must already be ordered using the Order (MDX)[^] function.



select 
{
    [Measures].[Measure1], [Measures].[Measure1]
    , [Measures].[Measure1]
} 
on columns,
topcount(
    crossjoin(
        [Dimension].[Dimension].[Dimension].&[123]
        , [Dimension2].[Dimension2].[Dimension2]
    )
,10
)
on rows
from [Cube name]


这篇关于如何从SQL Server中的MDX查询中选择限制结果集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆