Sql 如何在'中添加条件;订购人';?

Sql 如何在'中添加条件;订购人';?,sql,Sql,我有一个带有输入参数的存储过程,现在在这个参数的基础上,我的“order by”语句会发生变化,就像输入参数是“ID”(int-type列),然后是按ID排序,如果是“ProductType”,然后是按ProductType排序,如果是“IssueDate”,则应该是按IssueDate排序 现在,我在SP中添加了2条if-else语句,但此解决方案不可扩展,因此我的问题是还有更好的方法。如果使用SQL Server,可以使用case语句 order by case inputparam

我有一个带有输入参数的存储过程,现在在这个参数的基础上,我的“order by”语句会发生变化,就像输入参数是“ID”(int-type列),然后是按ID排序,如果是“ProductType”,然后是按ProductType排序,如果是“IssueDate”,则应该是按IssueDate排序


现在,我在SP中添加了2条if-else语句,但此解决方案不可扩展,因此我的问题是还有更好的方法。

如果使用SQL Server,可以使用case语句

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