Mysql 中英文混合排序
找了一下国内和国外网站,都没有很好的解决方案。
大概的几个建议:
一、
最简单的排序方法
最简单的排序方法只需要一条 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 中英文混合排序相关推荐
- MySQL中英文混合排序最简单的办法
来源:http://www.nowamagic.net/academy/detail/32161508 有时候我们需要对表的某个字段进行排序,比如标签 tag.如果 tag 包含中英文,那么就需要中英 ...
- List中英文混合排序
上一篇写了list汉语拼音排序:汉语拼音排序 对排序规则稍加修改即可实现中英文混合排序 /** * 功能:定义排序规则,实现中英文混合排序 * */ public class ComparatorHa ...
- java中英文汉语混合排序,Android实现列表数据按名称排序、中英文混合排序
Android实现列表数据按名称排序.中英文混合排序 发布时间:2020-09-16 00:58:10 来源:脚本之家 阅读:110 作者:God丶David 有时候我们需要多列表中的数据进行特定的排 ...
- 中文、英文和中英文混合排序
对Search进行排序 SearchComparator.java中的实现方法compare已不能满足需要 其中涉及到中文.英文或者中英文混合排序,所以,这里使用开源的Pingyin 对起排序 Sea ...
- 一个关于nvarchar字段排序,中英文混合排序的问题
有一个nvachar字段,里面有很多中英文混合的纪录 当按照这个字段排序的时候,无法按照英文a-z.中文的顺序排列 晴问如何解? 另外如何设置排序规则 你看看现在是什么排序规则? select SE ...
- [简易]中英文混合排序
代码,(说明略,看注释) package utils;import java.io.UnsupportedEncodingException; import java.util.ArrayList; ...
- java中英文混合排序_Java编程实现中英混合字符串数组按首字母排序的方法
本文实例讲述了Java编程实现中英混合字符串数组按首字母排序的方法.分享给大家供大家参考,具体如下: 在Java中对于字符串数组的排序,我们可以使用Arrays.sort(String[])方法很便捷 ...
- SQL中英文混合排序
首先要创建一个存储过程create function [dbo].[fn_ChineseToSpell](@strChinese varchar(500)='') returns varchar(50 ...
- Android按名称排序,中英文混合排序
有时候我们需要多列表中的数据进行特定的排序,最近项目中用到的是按名称排序,所以简单来说一下: 效果图: 排序方法: Collections.sort(students, new SortChinese ...
最新文章
- ORM 框架中SQLALCHEMY一点点个人总结
- Linux时间矫正流程,Linux 时间矫正命令
- Python Django根据数据库表生成模型类的命令
- 【转】体验 Silverlight 5 3D开发之环境搭配篇
- PowerDesigner生成mysql字段comment 注释
- 【DRF框架】序列化组件——字段验证
- 2018深大计算机考研,深圳大学2018年硕士生招生复试分数线及调剂需求
- 欣赏下国外人css3打造的载入动画
- javascript学习之利用方向键控制div模块的移动
- Discuz!开发之HTML转Discuz代码(bbcode)函数html2bbcode()
- 软件测试流程图及描述
- iOS开发之第三方支付-银联支付
- GhostScript 沙箱绕过(命令执行)漏洞(CVE-2018-19475)复现
- 51单片机流水灯程序
- MST703调试群创AT070TN92
- linux视频补帧,如何用 60 帧播放 24 帧的视频?
- 计算机图形学与虚拟环境pdf,计算机图形学与虚拟现实环境.ppt
- 【Linux学习】基本操作
- ECMALL会员等级,自定义等级类型,自定义等级价格
- 嵌入式之uboot源码分析-启动第二阶段学习笔记(下篇)
热门文章
- 计算机专业一句话,如何一句话惹怒一个专业,计算机专业,不就是个修电脑的吗...
- 计算机精英ACM fellow和ACM杰出科学家,各校校友统计
- pro7 plus android8,魅族PRO7 Plus是什么系统_魅族PRO7 Plus统更新-太平洋IT百科
- 麒麟985对比麒麟980哪个好有什么区别 麒麟985对比麒麟980参数对比
- 树【二叉树】与森林的相互转化与遍历
- nginx配置Jupyter
- steam csgo 设置默认的启动项
- 微信小程序做一个文档预览
- API测试接口,淘宝天猫、1688、京东、拼多多商品页面APP端原数据,API返回值说明
- 陌陌充值显示服务器异常,陌陌充值会员总是失败 陌陌会员充值未到账解决办法...