我正在尝试在solr中实现jobsearch。 我想要的是提升标题和关键字字段。 并且负面地推动那些位置在任何地方的文件。
例如: 我搜索了“Perl”和位置“孟买” 结果必须包含所有标题或关键字和位置“孟买或任何地方”的Perl简历。 但Resume with Anywhere字段必须是Last。 我做了以下查询:
((((perl)) AND ( (perl) ttl:(perl)^5 kw:(perl)^2) )
AND (( pref:(Mumbai) (pref:Anywhere)^0.000000001)) )
但它没有给出正确的结果。 请建议。
答案 0 :(得分:0)
伪造“负面提升”的一种方法是大幅提升不匹配的所有内容。你可以用你的查询做这样的事情(没有经过测试,所以试验一下):
((((perl)) AND ( (perl) ttl:(perl)^5 kw:(perl)^2) )
AND (( pref:(Mumbai) (*:* -pref:Anywhere)^999 ) )
以下是有关它的更多信息:http://wiki.apache.org/solr/SolrRelevancyFAQ#How_do_I_give_a_negative_.28or_very_low.29_boost_to_documents_that_match_a_query.3F