首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

按查询条件排序,可能吗?解决方法

2012-01-21 
按查询条件排序,可能吗?表table1char字段field1,field2数据如下field1,field2A0001,DDDDS2522,SSSSEEEE,SS

按查询条件排序,可能吗?
表table1
char字段field1,field2
数据如下
field1,field2
A0001   ,   DDDD
S2522   ,   SSSS
EEEE     ,   SSSF
.........

查询sql如下(该SQL条件是前端字符串SQL):
select   *   from   table1   where   field1= 'S2522 '   or   field1= 'A00001 '   or   field1= 'EEEE '
现在的需求是要查询结集按查询条件先后排序,希望得到结果如下:
field1,field2
S2522   ,   SSSS
A0001   ,   DDDD
EEEE     ,   SSSF

查询条件始终是field1,
不知道这个需求能否做到,请大侠赐教.

   


[解决办法]
select *
from table1
where field1= 'S2522 ' or field1= 'A00001 ' or field1= 'EEEE '
order by
case
when field1= 'S2522 ' then 1
when field1= 'A00001 ' then 2
when field1= 'EEEE ' then 3
else 4
end

[解决办法]
用CASE需要在傳入的條件是固定的情況下的,但是使用這個字符串可以在傳入的字符串不是固定的情況下使用。

热点排行