• Mysql中文排序

    普通类
    • 支持
    • 批判
    • 提问
    • 解释
    • 补充
    • 删除
    • Mysql中文排序

    select chineseColumn from tablename order by convert(chineseColumn using gb2312) asc;

     

    注意:学习元中不支持相应的HQL查询,需要用到HQL的本地查询。对于这个问题,从网上搜索,好像是配置的mysql方言的问题,看着挺有道理的,但是我没有尝试,若尝试成功,以后补上。

    已经解决。http://lcell.bnu.edu.cn/do/lcpage?action=view&koId=9372

     

    学习元平台中的本地查询方法:http://lcell.bnu.edu.cn/do/lcpage?action=view&koId=8485

    • 详细资料

    mysql教程中关于中文排序是一个比较有意思的问题,特别是对字段为uft-8或不是gbk,gb2312的字段类型是中文排序就出有问题,下面我们来看一个实例。

    create table `test111cnnet` (                                 
              `bid` int(4) unsigned not null auto_increment,       
              `namerean` varchar(20) character set gbk default null,
              primary key (`id`)                                 
            ) ;

    保存部份数据

    insert into `test1` (`id`, `namerean`) values('');
    insert into `test1` (`id`, `namerean`) values('
    ');
    insert into `test1` (`id`, `namerean`) values('
    ');

    mysql教程>select namerean fromtest111cnnetorder by namerean;

    邓(d
    李(l
    站(z

    这样看上去mysql中文排序是没有任问题,因为我们的namereangbk编码,所以结果是满意的,那么如果是uft-8就不行了,所以我们构造了一条,

    select namerean from test111cnnet order by convert(namerean using gb2312) asc;

    这样,不管当前字段为什么编码,他都能很好的按中文拼音进行排序了。

    • 标签:
    • 排序
    • gbk
    • 中文
    • 39
    • 问题
    • namerean
    • insert
    • mysql
    • id
    • test1
  • 加入的知识群:
    学习元评论 (0条)

    评论为空
    聪明如你,不妨在这 发表你的看法与心得 ~



    登录之后可以发表学习元评论
      
暂无内容~~
顶部