mysql通过find_in_set()函数实现where in()顺序排序
发布时间:2020-12-12 07:21:19 所属栏目:MsSql教程 来源:网络整理
导读:本文章来为各位介绍一篇关于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,17
本文章来为各位介绍一篇关于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',1769' ) 注意只是去掉了 再查出来: 783 769 814 1577 1769 至此我们实现用where in find_in_set 的排序,find_in_set 还可实现多条件排序 试试哦 总结 以上就是本文关于mysql通过find_in_set()函数实现where in()顺序排序的全部介绍,感兴趣的朋友可以参阅:MySQL数据库表分区注意事项大全【推荐】、几个比较重要的MySQL变量、sql和MySQL的语句执行顺序分析等,若有不足之处,欢迎大家留言指正。希望对大家有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |