zoukankan      html  css  js  c++  java
  • Mysql中文排序规则

    使用MySQL过程中,我们经常会对一个字段进行排序查询,我们一般都是想要按照中文拼音首字母进行依次排序,但mysql中进行中文排序的时候,对汉字的排序结果往往都是错误的。 这种情况在MySQL的很多版本中都存在。

    如果这个问题不解决,那么MySQL将无法实际处理中文。

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

    查了资料有两种解决方法:
    1.对于包含中文的字段加上”binary”属性,使之作为二进制比较,例如将”name varchar(10)”改成”name varchar(10)binary”。

    2. 如果不想对表结构进行修改或者重新编译MySQL,也可以在查询语句的 order by 部分使用 CONVERT 函数。

    比如 name字段为中文,需要按其排序,则可以写select * from mytable order by CONVERT(name USING gbk);

    原文链接:https://blog.csdn.net/qq_42043982/article/details/84953665

  • 相关阅读:
    koa2 中间件里面的next到底是什么
    nodejs 之 nvm和pm2
    javascript瀑布流
    转使用chrome命令行:disable
    MariaDB 用户与授权
    MariaDB TRANSACTION
    IHS .kdb转crt,key
    MariaDB TRIGGER
    MariaDB CURSOR
    MariaDB PROCEDURE
  • 原文地址:https://www.cnblogs.com/ivy-zheng/p/12667351.html
Copyright © 2011-2022 走看看