在DimCalendar上自定义排序

时间:2017-08-19 13:55:10

标签: sql

我有一个DimCalendar维度,我想在此基础上创建一个自定义列,它将用作PowerBI报告中的“按列排序”。

排序顺序应为2015年1月,2016年1月,2017年1月,2015年2月,2016年2月,2017年2月,依此类推。

因此,有人可以帮我写一个SQL语句来创建一个列,该列将按上述排序顺序对数字进行排名吗?

感谢。

[UPDATE]

示例数据 - 我整个月只拍了两个日期。

enter image description here

2 个答案:

答案 0 :(得分:0)

您可以连接日期的部分和月份部分。 在Ms SQL服务器中,您可以使用 日期部分(年,日)+“/”+日期部分(月,日)

答案 1 :(得分:0)

可以使用年份和月份来设置客户排序。在许多数据库中,您可以将其定义为:

update dimCalendar
    set customsort = month(date) * 10000 + year(date);

ANSI标准语法为:

update dimCalendar
    set customsort = extract(month from date) * 10000 + extract(year from date);