我有一个带有输入参数的存储过程,现在基于此参数,我的“ order by”语句将发生变化,例如,如果输入参数为“ ID”(int类型列),则按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