mysql怎样in查询操作排序
先说解决方案:
select * from test where id in(3,1,5) order by field(id,3,1,5);
或许有人会注意过
SQL: select * from table where id IN (3,6,9,1,2,5,8,7);
这样的情况取出来后,其实,id还是按1,2,3,4,5,6,7,8,9,排序的,
但如果我们真要按IN里面的顺序排序怎么办?SQL能不能完成?
是否需要取回来后再foreach一下?其实mysql就有这个方法
field函数。
函数格式:
order by field(str,str1,str2,str3...)
str为字段,str1\str2\str3为具体的列值
sql: select * from table where id IN (3,6,9,1,2,5,8,7) order by field(id,3,6,9,1,2,5,8,7);
转载请注明:IT运维空间 » Mysql » mysql怎样in查询操作排序
发表评论