zoukankan      html  css  js  c++  java
  • 在linq语言中,不能准确按拼音排序(转)

     在项目中,利用OrderBy/OrderByDescending, ThenBy/ThenByDescending这4个方法排序时,发现了这样的问题:在本机测试,能正确按拼音排序;但是放上服务器是,就不能正确的按拼音排序了。
          原来OrderBy/OrderByDescending, ThenBy/ThenByDescending中若是LinqToSql的话,就需要看下数据库机器得sql是否为中文版的?若数据库是英文版,就有可能出现不能正确的按拼音排序的情况,这时候,可以通过修改数据库属性来达到按拼音正确排序:打开SQL Server Management Studio,选择对应的数据库,右击选择属性(R),点击选项(Options),第一个排序规则(Collation),请选择 Chinese_PRC_CI_AS。

    PS:

     排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。   
      如:   
        Chinese_PRC_CS_AI_WS     
      前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。   
      排序规则的后半部份即后缀   含义:     
        _BIN   二进制排序     
        _CI(CS)   是否区分大小写,CI不区分,CS区分   
        _AI(AS)   是否区分重音,AI不区分,AS区分      
        _KI(KS)   是否区分假名类型,KI不区分,KS区分    
           _WI(WS)  是否区分宽度   WI不区分,WS区分    
        
      区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。   
      区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,比较还将重音不同的字母视为不等。   
      区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。   
      区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项

  • 相关阅读:
    3.2 Lucene实战:一个简单的小程序
    3.3 Lucene检索原理
    3.1 Java以及Lucene的安装与配置
    1.2 垂直搜索引擎的框架设计
    【lucene系列学习】排序
    【lucene系列学习】BooleanQuery
    【算法系列学习】codeforces D. Mike and distribution 二维贪心
    【算法系列学习】codeforces C. Mike and gcd problem
    【算法系列学习】HDU 5527 Too Rich贪心
    JavaScript实现数组转置
  • 原文地址:https://www.cnblogs.com/liuyuanhao/p/4507807.html
Copyright © 2011-2022 走看看