一般情况之下,我们可以使用ORDER BY ...ASC或DESC来做查询排序。如:

SQL查询结果自定义排序_SQL

 

SQL查询结果自定义排序_SQL_02SQL查询结果自定义排序_SQL_03

SELECT * FROM [dbo].[SalesPerformance]ORDER BY [Salesman] ASCGO

Source Code

 

如果需要求某一些值先排在前面,其余的数据再按规则排序,如Salesman的值‘S0008’,‘S0032’,‘S0022’排在前3位:

SQL查询结果自定义排序_SQL_04

 

SQL查询结果自定义排序_SQL_02SQL查询结果自定义排序_SQL_03

SELECT * FROM [dbo].[SalesPerformance]ORDER BY CASE 
    WHEN [Salesman] = 'S0008' THEN '1'
    WHEN [Salesman] = 'S0032' THEN '2'
    WHEN [Salesman] = 'S0022' THEN '3'
    ELSE [Salesman] END ASC

Source Code