现在有几百万个手机号码, 想根据手机号的优劣对数据进行排序 。
比如有连号的排在前面,13773856789,比如这样后面几位是连号的。
或者是某一位重复的比较多的排在前面 。 
比如139062758888不知道这种排序怎么写呢, 会不会很复杂 。。

解决方案 »

  1.   

    可以把你认为是好的,关键号码寸到表中,连接如 1111,222,555555,3456789 等 
    tb 字段id ,px 1 2 3 4然后
    select * from tnum ,tb
    where tel like '%+id+'%'
    order by px 
      

  2.   

    1.多加一列  orderId ,将所有orderId 都设置为10000
    2.更新所有连号的号码的orderId 设置为1
    3.更新所有“某一位重复的比较多”的号码的orderId 设置为2
    .....
      

  3.   

    规则很重要,同样的号码,有人认为好,有人认为不好..
    建议楼主先制定详细的排序规则,
    按"权"计分的方式去计算各个号码的最后得分.
    最后就简单了,select ... order by 得分 desc