论坛首页 Java企业应用论坛

lucene搜索结果排序问题

浏览 2553 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-11-04  
这里先说明一下应用场景:
对用户进行lucene搜索,而希望得到的结果排序有要求,具体如下:
现在假如有下面几条数据:
      名字   年龄  地址      个人介绍            备注
user1 李四   19    江南大道  路过              与张三是同学
user2 张三   20    江南大道  张三的介绍        abc
user3 王五   42    三三大道  abc               与李四是同事
user4 赵六   33    江南大道  张三峰是牛人呀    赵
上面几个用户信息全部生成索引,现在通过lucene搜索“张三”(在所有的字段中搜索)
会搜索出 user1(备注中出现张三),user2(名字是张三),user4(个人介绍中出现张三),
现在希望结果是user2,user4,user1这样的排序,也就是说得到的结果要求
    名字包含“张三"
    个人介绍包含”张三“
    备注包含”张三“
而不是随便的从上到下user1,user2,user4
也就是说得到的结果集中希望名字匹配优先,然后是个人介绍,然后是备注,依照这样的顺序进行排序下来,


在这里来问一下各位大侠们,有没有什么好办法 ?
   发表时间:2010-11-04  
查询时设定字段的boost值应该可以解决问题。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics