2012-03-10 153 views
0

好的,我在这里看到过类似的问题,但没有完全一样的。我正在创建基于从DW读取数据的多维数据集的报告。许多报告倾向于按照每周按价值或按月按价值排列。一切似乎都没问题,但周和月(列)没有正确排列。第10周在第9周前,第2周在第1周前,等。我非常沮丧,我不能让这些东西正常工作。SSRS按日期排序

要补充一点,在某些时候,我的客户需要能够使用Reportbuilder 3.0针对多维数据集编写他们自己的报告。所以,我不愿意依靠手动编辑查询。很明显有一些明显的方法来做到这一点。在我的DimDate中,我有一个名为varchar的星期,一个星期是日期等。

我在这里丢失了一些明显的东西。

谢谢!

回答

0

排序顺序是有意义的(varchars是字符串{“Week 10”,“Week 9”}和{“February”,“January”}),因为它们在您的示例中位于它们各自的对之前已经给出了,假设一个ASCII类型的字符串值。

有多种方式以具有升序排序以字符串作为列标题(假设ASCII类型的字符串字段排序):

  • 确保周数的长度是例如两个数字“第9周”将成为“第09周”。这将确保星期列按升序排列(或降序排列,情况是如此)。
  • 在月份名称前添加月份数字例如“1月1日”,“2月2日” - >您仍然需要两位数的月份数字,否则您将得到与星期数字相同的问题。
  • 使用格式化日期而不是字符串,因为日期将被正确排序。

或者,如果问题在立方体内的尺寸所引起,你可以确保任何ORDER BY子句上的键,而不是名称字段。

+0

前两个好主意。没有想到这一点。但是,我尝试使用格式化的日期,我最终没有显示任何内容。这很奇怪。我无法弄清楚什么是错的。 为了记录,日期显示在多维数据集中正确排序。 – user1168607 2012-03-12 04:02:23