我需要以MMM YYYY格式从SQLServer 2005表中显示一个名为datetimestamp的日期时间字段的不同值。我也需要按照时间顺序对它们进行排序。datetime上的SELECT DISTINCT
到目前为止,我有这样的:
Select distinct CONVERT(CHAR(4), datetimestamp, 100) + CONVERT(CHAR(4), datetimestamp, 120) as MonthYear from TableName order by MonthYear
当然排序它字母顺序,由于转换的“排序依据”。
Apr 2009
Dec 2009
Feb 2009
如何让它按时间顺序排序?
Feb 2009
Apr 2009
Dec 2009
谢谢。
Thanks @Fosco。尝试了你的建议。然而这破坏了一个SELECT DISTINCT规则。以下是错误:如果指定了SELECT DISTINCT,则ORDER BY项目必须出现在选择列表中。 – VVM 2011-06-06 16:42:06
@VVM啊是的......用别的东西更新了答案,供您尝试。 – Fosco 2011-06-06 17:10:08
再次感谢。尝试过这一个,但也得到了结论。错误:ORDER BY子句在视图,内联函数,派生表和子查询中无效,除非还指定了TOP或FOR XML。 VVM – VVM 2011-06-06 17:29:48