请问关于sql中distinct与order by 有关问题

请教关于sql中distinct与order by 问题
我有个SQL数据库,其中一个字段名是“jdyf”,数据类型是“nvarchar”,保存的是年份和月份,格式是“yyyy-mm”,例如“2011-1”、“2010-10”、“2010-12”等等,我现在想把他们进行列表,语句如下:
SELECT DISTINCT jdyf
FROM jdjzjh
ORDER BY CAST(jdyf + '-1' AS datetime) DESC
运行后提示如下错误:
如果指定了SELECT DISTINCT,那么ORDER BY子句就必须出现在选择列表中


如何修改,谢谢

------解决方案--------------------
如果指定了SELECT DISTINCT,那么ORDER BY子句就必须出现在选择列表中
SQL code
select jdyf from(
select top 100 percent jdyf,CAST(jdyf + '-1' AS datetime) from jdjzjh order by 2
)t

------解决方案--------------------
SQL code
create table jdjzjh(jdyf varchar(7))
insert into jdjzjh select '2011-6' union all select '2011-12'
go
SELECT DISTINCT convert(varchar(7),CAST(jdyf + '-1' AS datetime),120)
FROM jdjzjh
ORDER BY 1
/*
-------
2011-06
2011-12

(2 行受影响)

*/
go
drop table jdjzjh