日期:2014-05-18  浏览次数:20419 次

!!!救命啊,这个排序怎么写,!!!!!
id               name
                  0 正品                                
1 特价                              
2 配件                            
3 赠品                      
如果我想对name进行排序,而不是对id进行排序,怎么排,
不是按照汉字的拼音哦,而是根据特定情况

可能是按照正品,特价,配件,赠品的循序
有可能是按照正品,配件,赠品,特价
反正什么可能都有,都是根据业务的需要来变的

假如我现在要按正品,配件,赠品,特价来排序吧
怎么排?谢谢

------解决方案--------------------
看測試結果吧

--創建測試環境
Create Table 表
(id Int,
name Nvarchar(10))
--插入數據
Insert 表 Select 0, N '正品 '
Union All Select 1, N '特价 '
Union All Select 2, N '配件 '
Union All Select 3, N '赠品 '
GO
--測試
Select * From 表 Order By CharIndex(name, N '正品,配件,赠品,特价 ')
GO
--刪除測試環境
Drop Table 表
--結果
/*
id name
0 正品
2 配件
3 赠品
1 特价
*/