`

mysql in 自定义排序的问题

阅读更多
写道
xuxh(许消寒) 09:55:27
SELECT a.fabric_color_id,a.fabric_id,a.fabric_color_code,a.color_value,b.match_name AS color_match_name FROM fabric_color AS a LEFT JOIN color AS b ON b.color_id=a.color_id WHERE (a.fabric_color_id IN ('6','5','4'))
zhangxs(张雪松) 10:01:12
SELECT a.fabric_color_id,a.fabric_id,a.fabric_color_code,a.color_value,b.match_name AS color_match_name
FROM fabric_color AS a LEFT JOIN color AS b ON b.color_id=a.color_id
WHERE (a.fabric_color_id IN ('6','5','4'))
order by substring_index('6,5,4', fabric_color_id, 1);

select id, substring_index('''33'', ''3'',''6'',''4'', ''64''', concat('''', id, ''''), 1) from dr_original_product where id in (33, 3, 6, 4, 64)
order by substring_index('''33'', ''3'',''6'',''4'', ''64''', concat('''', id, ''''), 1)
zhangxs(张雪松) 10:25:52
按in中的顺序排序

还有就是使用 field方法来排序

mysql 可以使用FIELD()进行自定义排序
SELECT name, email, ... WHERE uid IN ([uid's from first sql]) order by field(uid,[uid's from first sql])

zhangxs(张雪松) 2012-11-01 10:50:15
MySQL可以通过field()函数自定义排序,格式:field(value,str1,str2,str3,str4),value与str1、str2、str3、str4比较,返回1、2、3、4,如遇到null或者不在列表中的数据则返回0.
xuxh(许消寒) 2012-11-01 10:50:47
哪个效率高呢
zhangxs(张雪松) 2012-11-01 10:51:59
个人认为前面的会高一些. 因为只需要处理字符串, 后面的那个需要多个变量.
xuxh(许消寒) 2012-11-01 10:52:27
substring_index > field 么?
zhangxs(张雪松) 2012-11-01 10:52:49
另外两者有一个重要的区别, 但是值在排序中不存在间, 前者会出现在后面. 后者会出现在前面
zhangxs(张雪松) 2012-11-01 11:02:31
应该是field的效率高
zhangxs(张雪松) 2012-11-01 11:02:42
这个的排序更简单一些/
xuxh(许消寒) 2012-11-01 11:03:06
学习到了

 

 

 

分享到:
评论

相关推荐

    mysql自定义排序顺序语句

    如果你在使用其他数据库系统(如PostgreSQL或Oracle),可能需要寻找类似功能的函数,如`CASE`表达式或者`IN`语句结合`ASC`和`DESC`来实现自定义排序。 总的来说,自定义排序顺序是MySQL查询中的一个强大工具,它...

    MySQL 按指定字段自定义列表排序的实现

    但`ORDER BY FIELD()`在处理简单的自定义排序时更加直观和简洁。 总的来说,掌握`ORDER BY FIELD()`函数的使用是MySQL查询优化和灵活数据呈现的重要技能。它能够帮助你更有效地满足各种复杂的排序需求,提升用户...

    详解 Mysql查询结果顺序按 in() 中ID 的顺序排列

    总结来说,这个示例展示了如何利用MySQL的`IN()`和`FIELD()`函数来根据指定的ID顺序排序查询结果,这对于需要个性化排序或用户定制顺序的场景非常有用。然而,为了性能考虑,对于大数据集,可能需要探索其他优化策略...

    里面有mysql基本操作,自定义jsp标签,XML的解析

    - **排序**:使用 `ORDER BY` 对查询结果进行排序。 - **分组**:使用 `GROUP BY` 对查询结果进行分组,并结合聚合函数如COUNT()、SUM()等进行统计分析。 ### 自定义JSP标签 自定义JSP标签是一种扩展JSP功能的方法...

    MySQL关于字符串中数字排序的问题分析

    总结,处理MySQL中的字符串数字排序问题,关键在于理解数据类型和隐式类型转换。在处理大量数据时,应考虑性能和可维护性,选择合适的方法并优化查询。同时,尽可能将数据存储在适当的类型字段中,避免不必要的类型...

    MySQL 5.1中文手冊

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的过程 ...

    MySQL源码安装和简单使用

    通过源码安装,不仅可以适应各种硬件环境,还可以自定义配置,优化MySQL的性能和安全性。但要注意,源码安装需要一定的Linux基础和编译知识,且过程相对复杂,适合于有经验的系统管理员或开发者进行。

    MySQL 5.1官方简体中文参考手册

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的过程 ...

    MySQL 5.1参考手册

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的过程 ...

    mysql5.1中文手册

    处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下...

    MySQL 5.1参考手册 (中文版)

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的过程 ...

    MySQL 5.1参考手册中文版

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的...

    mysql源码包安装

    `-DENABLED_LOCAL_INFILE`允许本地文件导入,`-DDEFAULT_COLLATION`设定默认排序规则,`-DWITH_MYISAM_STORAGE_ENGINE`、`-DWITH_INNOBASE_STORAGE_ENGINE`和`-DWITH_MEMORY_STORAGE_ENGINE`启用不同的存储引擎,`-...

    MySQL5.1参考手册官方简体中文版

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的过程 ...

    MySQL.rar_MYSQL_Mysql入门

    7. 数据查询:深入理解JOIN操作,子查询,聚合函数(COUNT、SUM、AVG、MAX、MIN),排序(ORDER BY)、分组(GROUP BY)和筛选(HAVING)。 四、数据库设计 8. 第三方范式:了解第一范式(1NF)、第二范式(2NF)、...

    MYSQL中文手册

    2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后...

    MySQL帮助手册

    使用mysql命令行工具或LOAD DATA INFILE语句可以恢复数据。 十一、安全与权限 MySQL通过GRANT和REVOKE语句控制用户权限,实现细粒度的访问控制。用户管理包括创建、删除和修改用户账户,以及设置口令。 十二、性能...

    源码安装MySQL.doc

    DCMAKE_INSTALL_PREFIX=/opt/mysql5.5 -DMYSQL_DATADIR=/opt/mysql5.5/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 ``` 如果cmake配置过程...

    PHP和MySQL Web开发第4版pdf以及源码

    13.1 LOAD DATA INFILE语句 13.2 存储引擎 13.3 事务 13.3.1 理解事务的定义 13.3.2 通过InnoDB使用事务 13.4 外键 13.5 存储过程 13.5.1 基本示例 13.5.2 局部变量 13.5.3 游标和控制结构 13.6 进一步...

Global site tag (gtag.js) - Google Analytics