mysql 实现按 where in () 中的顺序排序,用find_in_set() 函数
来源:互联网 发布:windows系统排名 编辑:程序博客网 时间:2024/05/16 18:44
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
edit by @hxl5u
- mysql 实现按 where in () 中的顺序排序,用find_in_set() 函数
- mysql使in、find_in_set按顺序查出来
- MySQL where in 排序
- Oracle 实现 mysql 的 find_in_set 排序!
- FIND_IN_SET函数中MySql中的经典使用方法
- mysql中in函数和find_in_set函数的区别详解
- mysql where in 排序/不排序
- Mysql FIND_IN_SET函数
- mysql函数group_concat,find_in_set
- MYSQL FIND_IN_SET函数
- MySQL函数find_in_set介绍
- mysql 中的find_in_set用法
- mysql中的 IN和FIND_IN_SET的查询问题
- mysql中的 IN和FIND_IN_SET的查询问题
- mysql中的 IN和FIND_IN_SET的查询问题
- mysql中的 IN和FIND_IN_SET的查询问题
- MySql函数 FIND_IN_SET 在Hibernate HQL语句中的使用
- mybatis 按in 函数参数顺序排序
- 网上找的一个“回到顶部”的小链接
- [Linux] rlwrap - 解决Linux下sqlplus退格、上翻键乱码问题
- iOS4 and wireless application deploy
- 将matlab中数据保存为txt或dat格式
- linux学习笔记之--文件及目录权限
- mysql 实现按 where in () 中的顺序排序,用find_in_set() 函数
- 小心使用STL中map的[]操作符
- Jump Game
- Nero Burning Rom V6多区段刻录详解
- 坑爹的libxml2 for mingw 编译
- Firefox OS 学习——Firefox OS 知识
- mysqlserver优化之其他整体配置
- Java多线程同步机制(synchronized)【转】
- weblogic.xml的那些事儿