mysql 按中文字段排序

转载 2009年01月06日 11:55:00

在MySQL中,进行中文排序和查找的时候,对汉字的排序和查找结果是错误的。 这种情况在MySQL的很多版本中都存在。如果这个问题不解决,那么MySQL将无法实际处理中文。 出现这个问题的原因是因为MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象。

解决方法:

  1. 对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。
  2. 如果你使用源码编译MySQL,可以编译MySQL时使用 --with--charset=gbk 参数,这样MySQL就会直接支持中文查找和排序了(默认的是latin1)。也可以用 extra-charsets=gb2312,gbk 来加入多个字符集。

如果不想对表结构进行修改或者重新编译MySQL,也可以在查询语句的 order by 部分使用 CONVERT 函数。比如 select * from mytable order by CONVERT(chineseColumnName USING gbk);

mysql 查询根据两个或两个以上字段排序

以jibingName=腹痛 字段为例                  -------------------------------------------------------------...
  • u012503756
  • u012503756
  • 2017年01月22日 09:38
  • 3014

首字母排序A-Z,用mysql函数来操作

执行SQL select intermediary_id, intermediary_name, fristPinyin(intermediary_name) as fristPinyin from ...
  • xiangmes
  • xiangmes
  • 2016年04月07日 15:11
  • 1168

解决Hibernate中MySQL的中文排序

http://raywithu.iteye.com/blog/1139332 转载请注明出处 最近使用mysql做一个交易网站,使用hibernate作为持久化框架。 当我使用...
  • shen332401890
  • shen332401890
  • 2013年12月27日 16:26
  • 4155

mysql 按中文字段排序

我们的MySQL使用latin1的默认字符集,也就是说,对汉字字段直接使用GBK内码的编码进行存储,当需要对一些有汉字的字段进行拼音排序时(特别涉及到类似于名字这样的字段时),默认无法通过order ...
  • lvjiankui
  • lvjiankui
  • 2013年12月02日 14:21
  • 808

List<Map<String, Object>> 中文字段排序

循环遍历按其中某个中文字段排序 /** * 中文排序 * @author itmyhome * */ public class MapComparator implements ...
  • itmyhome
  • itmyhome
  • 2015年11月24日 22:20
  • 2754

oracle 中文字段按首字母拼音排序

转自:http://www.blogjava.net/hwpok/archive/2010/06/25/324397.html 一、中文排序       1. //按照笔划排序     ...
  • qq_41215812
  • qq_41215812
  • 2017年12月28日 14:57
  • 18

java集合某个字段按照中文拼音排序

List 中的ArrayList本身是按照添加顺序排列的,但是有时候想自定义排序方式怎么办呢? 1、List中的Record 实现 Comparable接口并复写compareto方法 [java...
  • layman1024
  • layman1024
  • 2017年12月29日 10:21
  • 40

Oracle中文、数字混杂字段的排序

Oracle中文、数字混杂字段的排序
  • fayedh
  • fayedh
  • 2011年08月05日 16:55
  • 645

ORACLE中文字段排序

select *  from T_0303003  order by stock_holder 进行选取数据时(stock_holder为存放中文的字段),结果发现两库返回的记录顺序不一致。琢磨...
  • xyh94233
  • xyh94233
  • 2013年07月26日 10:57
  • 671

MySQL导入含有中文字段(内容)CSV文件乱码解决方法

前两天做项目中用到含有中文字段的数据CSV文件,使用workbench导入文件报错: 从网上找了很长时间都说是CSV文件编码与clint编码不匹配的问题,尝试将CSV转化为utf8编码,导入还是不...
  • u011997078
  • u011997078
  • 2016年05月04日 11:47
  • 7972
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mysql 按中文字段排序
举报原因:
原因补充:

(最多只允许输入30个字)