SELECT * FROM yy_xt_name ORDER BY Left(cader_name,1)

解决方案 »

  1.   

    SELECT * FROM yy_xt_name ORDER BY cader_name 不就是按姓氏排列的吗?
    先比较第一个字再比较第二个字依次进行.
    觉得phantomMan那个没有必要.如果楼主想按自己设定的姓氏显示的话,那就有必要建一张代码表了(比如说:希望姓'张'的排在第一,姓'李'的排在最后等等)
      

  2.   

    哦, I SEE.SORRY. 那是我考虑不周.那要看具体楼主的需求是什么了(比如说:当中文和英文的名字在一起时,应该先显示哪一个?这个问题要看具体的需求)
      

  3.   

    phantomMan(去年Delphi,年底.net,今年5月SQL,现在XML,何时学JAVA?) :
    现在的就是有中文的,如果采用你那种方法,也不行啊。
    filebat(Mark)的方法可以实现,可是那么多姓氏,数据记录可不小。况且,如果某一个用户用繁体输入的话,那又不行了。
      

  4.   

    回复人: filebat(Mark) ( ) 信誉:100  2005-07-12 17:06:00  得分: 0  
     
     
       哦, I SEE.SORRY. 那是我考虑不周.那要看具体楼主的需求是什么了(比如说:当中文和英文的名字在一起时,应该先显示哪一个?这个问题要看具体的需求)
      
    =======================
    是啊,现在要解决的是简体中文的。英文的,繁体暂不作考虑了
      

  5.   

    phantomMan,
    按姓氏的笔划进行排序,笔划少的就排在前面。
      

  6.   

    这个要去查汉字的unicode编码。(不过,它可能是按拼音来排的。)楼主给一些数据来吧。
    看看, 为什么默认下的不行。
      

  7.   

    好像楼主的要求不能实现, UniCode 也不行
      

  8.   

    新建一张姓氏表,但要加上 序号,如id  id_n
    1  赵 
    2 钱
    3 孙
    4 李
    5 周
    ...把你的表和这个表关联, 用id 来排序