【发布时间】:2016-06-21 12:45:17
【问题描述】:
在 SQL 端,我的数据是这样的:
Select f.id, f.TimeKey,t.CalendarYearMonth
from FactSubmission f
inner join DimTime t on t.TimeKey = f.TimeKey
order by f.Id asc
从 MDX 排序我们有降序
SELECT
NON EMPTY ORDER(
[DimTime.CalendarYearMonth].[CalendarYearMonth].Members,
[DimTime.CalendarYearMonth].CurrentMember.Properties("MEMBER_KEY"),
DESC
) ON COLUMNS
FROM [PSE_FactSubmission]
上升
1 月日期不在这两种排序的顶部,这表明我按 FactSubmission.ID 键而不是 DimTime.CalendarYearMonth 进行排序
事情是这样运作的吗?我想把 1 月、2 月、3 月拉回来。
DimTime.CalendarYearMonthNum 是一列,其数据格式为 201501,201502,201503 等。这里尝试使用此列对 CalendarYearMonth 数据进行排序。
【问题讨论】:
-
它似乎是在排序字符串,这将导致这样的输出取决于
ASC/DESC顺序。也许您可以将值更改为月数,例如:2016-01... -
@ConsiderMe 我有点明白你在说什么。如果我将第一个和第二个 ORDER 参数切换为严格的数值,则排序按预期工作。有没有办法选择字符串版本,并按对应的数值排序?