Solr对分词字段进行完全匹配加权的操作

需求:

对这个字段进行完全匹配 的排序进行加权

 <field name="keyword_vague" type="text_ansj" multiValued="true" indexed="true" stored="true"/>

公式:

sum(sum(product(product(div(log(sum(bidding_price,10)),7),0.15),9),product(product(div(log(sum(daily_quota,10)),7),0.15),0.3),product(product(div(log(sum(budget,10)),7),0.15),0.3),product(product(div(log(sum(budget_left,10)),7),0.15),0.4)),if(exists(query({!v=keyword_vague:品牌设计全案})),100,0)) desc

sc:公式得分

但是可以看到对这种分词的字段,solr将关键词分词后与之匹配,部分匹配并不是我们想要的

再看看公式:if(exists(query({!v=keyword_vague:品牌设计全案})),100,0)

我想的是将“品牌设计全案” 完全匹配的加权100

结果“品牌设计”部分匹配也加权





解决方案:

将关键词加引号

sum(sum(product(product(div(log(sum(bidding_price,10)),7),0.15),9),product(product(div(log(sum(daily_quota,10)),7),0.15),0.3),product(product(div(log(sum(budget,10)),7),0.15),0.3),product(product(div(log(sum(budget_left,10)),7),0.15),0.4)),if(exists(query({!v=keyword_vague:“品牌设计全案”})),100,0)) desc

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值