MDX查询订单问题

时间:2011-01-22 04:38:50

标签: sql-server-2005 mdx

我有二维字段说[自定义日期],其数据类似于'2009年9月'和[自定义日期与Formart],其数据类似于'Sep-09'。

我正在应用订单功能来安排它,如下所示。

Order(BottomCount(
{[CUBE].[Custom Date].[Custom Date].ALLMEMBERS},  12),
[CUBE].[Custom Date].[Custom Date].[], DESC)
ON COLUMNS,

它安排我的日期为'2009年9月','2009年10月'......,'2010年1月','2010年2月'。

Order(
{[CUBE].[Custom Date With Formart].[Custom Date With Formart].ALLMEMBERS},
[CUBE].[Custom Date].[Custom Date].[], DESC)
ON COLUMNS,

上面的输出就像'Jan-10','Feb-10',....,'Sep-09','Oct-09'。

我想要的是在轴上显示[自定义日期与Formart]并使用[自定义日期]对其进行排序。

让我知道你的意见。


感谢大家。我按照link解决了我的问题。

2 个答案:

答案 0 :(得分:2)

我不确定是否真的了解你的问题。为什么你需要任何特定的顺序才能得到似乎是什么 时间维度的自然顺序。在任何情况下,您可能需要使用BDESC选项而不是DESC(请参阅文档here)。

答案 1 :(得分:1)

如果可以应对VBA,您可以尝试创建要排序的字符串,并将其转换为日期:

ORDER(whatever, CDate("01-" + [my dimension].currentMember.caption), BDESC)

该代码可能无法按原样运行,但我想建议的是,您将成员名称的字符串“Sep 10”并将其转换为一个完整日期的字符串(月初) ),然后可以转换为日期,并用于排序。