lucene进行查询后,按照SortField.SCORE进行了排序。
SCORE的值,例如: 0.46495944 
小数点后面很长,我想截到第2位来排序,是否可以?
这样使分数相同的多一些,以便进行其他排序

解决方案 »

  1.   

    lucenue里没有只按前两位排序的规则
    不过这个可以通过下面两个方法来解决:
    1、存的时候,多加一个字段这个字段为截取的前两位的字段
    2、第二种方案,取的时候,截取出来
     
      

  2.   

    谢谢 JarodYvSortField.SCORE是lucene自带的,每次查询不结果不一样,
    不是我手工存入得字段 
      

  3.   

    我知道SortField.SCORE是lucene自带的。由于lucene没有只按前两位排序的规则 ,所以我们不能用自带的SortField.SCORE,要通过别的途径手工实现。
      

  4.   

    三条数据:
    1、
    id:1
    内容----
    时间:20090401
    得分1.0
    2、
    id:2
    内容----
    时间:20090401
    得分0.9957643
    3、
    id:3
    内容----
    时间:20090411
    得分0.9944641我想得到排序结果是:
    1
    3
    2