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

oracle 查询in操作 查询结果按in会合顺序显示

2012-08-13 
oracle 查询in操作 查询结果按in集合顺序显示?问题如下:select?*?from?tfm_services?t?where?t.service_na

oracle 查询in操作 查询结果按in集合顺序显示

?问题如下:

select?*?from?tfm_services?t?where?t.service_name?in?('QueryAdviceConfigService'
,'ResetAdviceListState'????
,'CancelAdviceListState'
,'GetSMSCharLimit'
,'SendSMSService'
,'AddAdviceType'
,'ModAdviceType'
,'DelAdviceType'
,'DelAdviceTypeLang'
,'AddAdviceTypeLang');

?

查询出来的结果如何按照我传递参数的顺序显示出来,而不是按照service_name的首字母顺序排列

?

有一个办法,不过比较麻烦。

SQL如下:

?

select * from tfm_services t where t.service_name in (

'QueryAdviceConfigService'

,'ResetAdviceListState' ? ?

,'CancelAdviceListState'

,'GetSMSCharLimit'

,'SendSMSService'

,'AddAdviceType'

,'ModAdviceType'

,'DelAdviceType'

,'DelAdviceTypeLang'

,'AddAdviceTypeLang')

ORDER BY decode(t.service_name,'QueryAdviceConfigService',1,

'ResetAdviceListState',2,

'CancelAdviceListState',3,

'GetSMSCharLimit',4,

'SendSMSService',5

,'AddAdviceType',6

,'ModAdviceType',7

,'DelAdviceType',8

,'DelAdviceTypeLang',9);

热点排行