select * from ibs6_terminal_adv_inf where id in (16,14,15) order by field(id,16,14,15)
select * from ibs6_terminal_adv_inf where id in (16,14,15) order by find_in_set(id,'16,14,15')
select * from ibs6_terminal_adv_inf where id in (16,14,15) order by substring_index('16,14,15',id,1)
结果就是按顺序显示了
sqlserver 用以下的语句
select * from ibs6_terminal_adv_inf where id in (16,14,15) order by CHARINDEX(','+ltrim(id)+',',',16,14,15,')"
这个方法没有测试过,有测试过的同学可以发一下结果