2013-02-04 54 views
0

我想將我的ArticleID排序爲(DESC)。我如何編輯此代碼來做到這一點? 太感謝你了在sql中排序case語句DESC

ORDER BY CASE 
     WHEN @order = 'AddArticleType.ArticleID' THEN CONVERT(nvarchar,AddArticleType.ArticleID) 
     WHEN @order = 'Title' THEN CONVERT(nvarchar, Title) 
     WHEN @order = 'family' THEN CONVERT(nvarchar, family) 
     WHEN @order = 'AddArticleType.ArticleType' THEN 
     CONVERT(nvarchar, AddArticleType.ArticleType) 
     END 
+1

這是用於SQL Server嗎?如果是這樣,什麼版本?另外,如果您發佈了其他SQL查詢,它將會有所幫助。 –

+0

不,它是SQL的exppress .. – Reza

+1

@SaeedTalaee:爲什麼這個問題上有'asp.net'標籤? –

回答

2

再回到從以前的帖子@戈登的很好的答案,這應該工作:

ORDER BY 
    CASE WHEN @order = 'AddArticleType.ArticleID' THEN AddArticleType.ArticleID END DESC, 
    CASE WHEN @order = 'Title' THEN Title END, 
    CASE WHEN @order = 'family' THEN family END, 
    CASE WHEN @order = 'AddArticleType.ArticleType' THEN AddArticleType.ArticleType END 

我已經簡化你的代碼進行測試:

http://sqlfiddle.com/#!3/8a2d3/9

祝你好運。