找了一下国内和国外网站,都没有很好的解决方案。

大概的几个建议:

一、

最简单的排序方法

最简单的排序方法只需要一条 SQL语句:

select * from musician_ordered order by convert(name using gbk) collate gbk_chinese_ci;

首先,对name字段进行gbk编码,然后,对编码后的内容根据gbk_chinese_ci进行整理排序。

这样得到的结果,英文是排在中文前面的,而且是根据拼音排序的。

http://www.lijiejie.com/mysql-first-char-filter/

二、

mysql对中文的支持真是比较差,一旦库里面既有中文数据,又有英文数据,排序出来就是乱七八糟的. 在网上搜了一下,大家给出的几个解决方案都不太好用.

这里给出一个土一点的解决方法,比较适合已经有大量数据,并且很少有新数据加入的情况. 在数据导入前,在excel或者别的软件里把数据排序好,这些软件一般都对多语言支持比较好,排序好后, 加一列,这列为id,顺序递增,然后导入mysql. 以后,需要按字母顺序排序的时候, 直接按id排序即可. 如果要插入数据, 可用相应的算法保证插入时不打乱排序.

http://ask.test.51js.com/q/758.html

三、数据量不大的情况下,数据查出来以后,用java/pyton等语言的工具类转换,把中文数据转换成英文后在排序。亲测java拼音类可以实现。

如果有其他更好的方法,欢迎分享。

Mysql 中英文混合排序相关推荐

  1. MySQL中英文混合排序最简单的办法

    来源:http://www.nowamagic.net/academy/detail/32161508 有时候我们需要对表的某个字段进行排序,比如标签 tag.如果 tag 包含中英文,那么就需要中英 ...

  2. List中英文混合排序

    上一篇写了list汉语拼音排序:汉语拼音排序 对排序规则稍加修改即可实现中英文混合排序 /** * 功能:定义排序规则,实现中英文混合排序 * */ public class ComparatorHa ...

  3. java中英文汉语混合排序,Android实现列表数据按名称排序、中英文混合排序

    Android实现列表数据按名称排序.中英文混合排序 发布时间:2020-09-16 00:58:10 来源:脚本之家 阅读:110 作者:God丶David 有时候我们需要多列表中的数据进行特定的排 ...

  4. 中文、英文和中英文混合排序

    对Search进行排序 SearchComparator.java中的实现方法compare已不能满足需要 其中涉及到中文.英文或者中英文混合排序,所以,这里使用开源的Pingyin 对起排序 Sea ...

  5. 一个关于nvarchar字段排序,中英文混合排序的问题

    有一个nvachar字段,里面有很多中英文混合的纪录 当按照这个字段排序的时候,无法按照英文a-z.中文的顺序排列 晴问如何解? 另外如何设置排序规则 你看看现在是什么排序规则? select  SE ...

  6. [简易]中英文混合排序

    代码,(说明略,看注释) package utils;import java.io.UnsupportedEncodingException; import java.util.ArrayList; ...

  7. java中英文混合排序_Java编程实现中英混合字符串数组按首字母排序的方法

    本文实例讲述了Java编程实现中英混合字符串数组按首字母排序的方法.分享给大家供大家参考,具体如下: 在Java中对于字符串数组的排序,我们可以使用Arrays.sort(String[])方法很便捷 ...

  8. SQL中英文混合排序

    首先要创建一个存储过程create function [dbo].[fn_ChineseToSpell](@strChinese varchar(500)='') returns varchar(50 ...

  9. Android按名称排序,中英文混合排序

    有时候我们需要多列表中的数据进行特定的排序,最近项目中用到的是按名称排序,所以简单来说一下: 效果图: 排序方法: Collections.sort(students, new SortChinese ...

最新文章

  1. ORM 框架中SQLALCHEMY一点点个人总结
  2. Linux时间矫正流程,Linux 时间矫正命令
  3. Python Django根据数据库表生成模型类的命令
  4. 【转】体验 Silverlight 5 3D开发之环境搭配篇
  5. PowerDesigner生成mysql字段comment 注释
  6. 【DRF框架】序列化组件——字段验证
  7. 2018深大计算机考研,深圳大学2018年硕士生招生复试分数线及调剂需求
  8. 欣赏下国外人css3打造的载入动画
  9. javascript学习之利用方向键控制div模块的移动
  10. Discuz!开发之HTML转Discuz代码(bbcode)函数html2bbcode()
  11. 软件测试流程图及描述
  12. iOS开发之第三方支付-银联支付
  13. GhostScript 沙箱绕过(命令执行)漏洞(CVE-2018-19475)复现
  14. 51单片机流水灯程序
  15. MST703调试群创AT070TN92
  16. linux视频补帧,如何用 60 帧播放 24 帧的视频?
  17. 计算机图形学与虚拟环境pdf,计算机图形学与虚拟现实环境.ppt
  18. 【Linux学习】基本操作
  19. ECMALL会员等级,自定义等级类型,自定义等级价格
  20. 嵌入式之uboot源码分析-启动第二阶段学习笔记(下篇)

热门文章

  1. 计算机专业一句话,如何一句话惹怒一个专业,计算机专业,不就是个修电脑的吗...
  2. 计算机精英ACM fellow和ACM杰出科学家,各校校友统计
  3. pro7 plus android8,魅族PRO7 Plus是什么系统_魅族PRO7 Plus统更新-太平洋IT百科
  4. 麒麟985对比麒麟980哪个好有什么区别 麒麟985对比麒麟980参数对比
  5. 树【二叉树】与森林的相互转化与遍历
  6. nginx配置Jupyter
  7. steam csgo 设置默认的启动项
  8. 微信小程序做一个文档预览
  9. API测试接口,淘宝天猫、1688、京东、拼多多商品页面APP端原数据,API返回值说明
  10. 陌陌充值显示服务器异常,陌陌充值会员总是失败 陌陌会员充值未到账解决办法...