文章出处: http://soft.zdnet.com.cn/software_zone/2013/0304/2146615.shtml
mysql in根据查询时,返回结果是自行排序的,如果要按照我们查询的ID进行排序,要用到order by field,下面用几个例子来说明一下mysql in查询排序。
例子:
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里面的顺序排序怎么办?我们可以用order by field
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);
查询出来的结果就是按自定义的ID进行排序了.
自己改了一下:
select * from recommendedshoptwo where shopId in ('6-1-0002','6-1-0001') order by field(ShopId,'6-1-0002','6-1-0001') limit 0,2;
本文介绍了如何在MySQL中使用IN查询时实现自定义排序的方法。通过使用orderbyfield函数,可以按照指定顺序对查询结果进行排序,适用于需要特定排序逻辑的场景。
511

被折叠的 条评论
为什么被折叠?



