有时客户的硬性要求加上项目以及数据库的反复更改导致不能通过简单的order by [字段] desc or asc进行排序
举个简单的列子提供个大家参考。希望能帮到大家
id Name Leixing
1 鱼 食物
2 鸡 食物
3 鸭 食物
4 鱼饵 鱼食
5 饲料 鸡食
开始这张表只有id:1,2,3。查出来显示很简单根据Name排序
但后期加入了数据id:4,5,顾客又希望看到id=4的数据在id=1的数据下面,id=5的数据在id=2的数据下面
这时通过简单的字段排序行不通了(由于总总情况表结构以及数据不能更改),话不多说,直接上代码
select * from tab order by CHARINDEX(CONVERT(nvarchar(10),tab.id),'1,4,2,5,3')
提供给大家一个思路,现实情况比这个复制的多