select *,case id when 10 then 1 when 32 then 2 when 22 then 3 when 76 then 4 when 13 then 5 when 44 then 6 END as seqfrom table where (ID = 10) or (ID = 32) or (ID = 22) or (ID = 76) or (ID = 13) or (ID = 44)order by seq [解决办法]
SQL code
select *,INSTR(',10,32,22,76,13,44,', ','+id+',') as seqfrom table where id in(10,32,22,76,13,44)order by seq [解决办法]
[解决办法] 哈哈哈哈哈哈哈,你们都不行,看我的。
select * from table where id in(10,32,22,76,13,44) order by field (id,10,32,22,76,13,44);
[解决办法] select a.*, a.mark from ( select table.id, 600 as mark from table where table.id=10 union select table.id, 500 as mark from table where table.id=32 union select table.id, 400 as mark from table where table.id=22 union select table.id, 300 as mark from table where table.id=76 union select table.id, 200 as mark from table where table.id=13 union select table.id, 100 as mark from table where table.id=44 ) as a order by mark desc;