SSRS中日期列排序不正确



我有一个使用SQL Server Reporting Services生成报告的存储过程。存储过程返回结果并具有一个日期列。

现在我想在2009年8月5日,11:20:AM格式显示日期,而不是显示MM/DD/YYYY,所以我在存储过程[select col1, col2, cast(datecol as varchar(max)…)]中的选择查询中按如下方式转换日期。这有助于我以我想要的正确格式显示日期,但列正在按文本(A-Z)排序,而不是日期。

有人能告诉我我应该怎么做,这样我就能得到预期格式的日期,仍然能够排序像它的日期不是字符串列?

以日期形式发送数据,并使用reporting services Format方法更改数据的显示方式。

关于使用

的参数的描述,请参阅此线程。

所以你最终会使用像这样的表达式:

=Format(Fields!MyDateField,"MMM d yyyy, HH:mm tt")

=CDate(Fields!MyDateField.Value)

报表中返回的值是"字符串",CDate将该字符串值转换为Date类型。这样做可以正确地按此列作为日期类型进行排序。

最新更新