Mysql 关键子IN 不按传入的顺序返回数据

it2022-05-05  149

实例:

SELECT plate_no,user_car_id FROM customer_user_car WHERE user_car_id IN (57603,57612,57607,57605)

这样的情况取出来后,其实,id还是按由小到大排序的,但如果我们真要按IN里面的顺序排序怎么办?SQL能不能完成?是否需要取回来后再foreach一下?其实mysql就有这个方法 :

SELECT plate_no FROM customer_user_car WHERE user_car_id IN (57603,57612,57607,57605) ORDER BY FIELD(user_car_id,57603,57612,57607,57605)

另一个使用group_concat时的例子:

SELECT GROUP_CONCAT(COUNT ORDER BY FIELD(template_member_id,20,19,18)) AS counts FROM market_item_counting_card_template_memeber WHERE template_member_id IN (20,19,18)

记录一下。 参考自: https://blog.csdn.net/swazer_z/article/details/50633964


最新回复(0)