源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

mysql通过find_in_set()函数实现where in()顺序排序

  • 时间:2020-05-31 04:46 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:mysql通过find_in_set()函数实现where in()顺序排序
本文章来为各位介绍一篇关于mysql 实现按 where in () 中的顺序排序,用find_in_set() 函数的教程,希望此教程能够对各位有所帮助。
select * from table where id in ('783',' 769',' 814',' 1577',' 1769') 
order by find_in_set( id, '783, 769, 814, 1577, 1769' ) 
查出来:
769
1577
814
1769
783
为什么不是 783 769 814 1577 1769 的顺序? 注意:经查找后原因出在find_in_set里面,如果find_in_set的第二个参数中有空格将导致顺序乱掉,因为mysql查询之前不会给你trim空格符。 so... 去空格后:
select * from table where id in ('783',' 769',' 814',' 1577',' 1769') 
order by find_in_set( id, '783,769,814,1577,1769' ) 
注意只是去掉了 '783,769,814,1577,1769' 中的空格
再查出来:
783
769
814
1577
1769
至此我们实现用where in find_in_set 的排序,find_in_set 还可实现多条件排序 试试哦 [b]总结[/b] 以上就是本文关于mysql通过find_in_set()函数实现where in()顺序排序的全部介绍,感兴趣的朋友可以参阅:[url=http://www.1sucai.cn/article/125732.htm]MySQL数据库表分区注意事项大全【推荐】[/url]、[url=http://www.1sucai.cn/article/125313.htm]几个比较重要的MySQL变量[/url]、[url=http://www.1sucai.cn/article/125741.htm]sql和MySQL的语句执行顺序分析[/url]等,若有不足之处,欢迎大家留言指正。希望对大家有所帮助。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部