mysql 按中文字段排序

时间:2024-01-14 18:04:19 

如果这个问题不解决,那么MySQL将无法实际处理中文。 出现这个问题的原因是因为MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象。

解决方法:

对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。
如果你使用源码编译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,中文字段,排序
0
投稿

猜你喜欢

  • Python温度转换实例分析

    2023-08-21 22:48:32
  • python实现名片管理器的示例代码

    2023-12-11 05:34:50
  • Python lxml模块安装教程

    2021-08-26 22:23:43
  • Python利用prettytable库输出好看的表格

    2023-12-07 03:06:30
  • OpenCV 基本图形绘制函数详解

    2022-01-22 11:09:59
  • Python制作词云图代码实例

    2023-10-24 11:20:21
  • 栈和队列数据结构的基本概念及其相关的Python实现

    2022-03-14 23:18:28
  • python 列表推导和生成器表达式的使用

    2021-03-16 11:21:39
  • JS重载实现方法分析

    2023-10-07 08:09:04
  • AJAX打造博客无刷新搜索

    2007-08-23 08:48:00
  • Java连接Oracle数据库实例解析

    2024-01-17 06:31:04
  • Python使用新浪微博API发送微博的例子

    2023-12-22 08:43:45
  • 详解mysql 组合查询

    2024-01-20 10:43:06
  • golang gorm的Callbacks事务回滚对象操作示例

    2024-04-25 13:18:42
  • Go Gin实现文件上传下载的示例代码

    2023-06-21 15:11:13
  • GO语言基础之数组

    2024-03-11 21:44:03
  • SQL 查询性能优化 解决书签查找

    2024-01-28 08:33:53
  • MongoDB为用户设置访问权限

    2023-07-16 06:03:52
  • python实操练习案例(一)

    2022-01-18 12:10:41
  • 简单了解django缓存方式及配置

    2022-11-20 05:04:17
  • asp之家 网络编程 m.aspxhome.com