Mysql根据in的查询顺序进行排序

       有时候接到统计需求里发现统计需要的数据可能不是按一个通常的顺序排列,比如从小到大或者从大到小

像这种 20,16,35,100,201,131

那如果提数据导出需求的人要求按他要求顺序提供数据的话

可以使用mysql的field()函数进行自定义排序

例如:

SELECT
	*
FROM
	tb_merchant AS t
WHERE
	t.id IN (20,16,35,100,201,131) order by FIELD(id, 20,16,35,100,201,131);

Select * from [表名] where [查询字段] in ([查询条件]) order by field([需要排序的字段],...[','隔开,查询条件]...

效果如下....效率其实蛮高的,虽然官方推荐在程序里面进行排序

但是偶尔查个数据的话,还是用这个最快捷方便

是不是蛮方便的?

猜你喜欢

转载自blog.csdn.net/umbrellasoft/article/details/81664938