2010-11-18 99 views
2

我有一個輸入參數的存儲過程,現在基於這個參數,我的'order by'語句將會改變,就像輸入參數是'ID'(int類型列)然後按ID排序,如果它是'ProductType '然後按Producttype排序,如果它是'IssueDate',那麼它應該是按發行日期排序。如何在'order by'中添加條件?

現在我已經在我的SP中添加了2個if else語句,但此解決方案不具有可伸縮性,所以我的問題有更好的方法。

回答

4

如果使用SQL Server,你可以使用一個case語句

order by 
    case inputparameter 
    when 'id' then id 
    when 'productType' then ProductType 
    else defaultOrderBy 
    end