我想在地址内搜索,文字是纽约, 我启用了调试日志,下面是调试日志....
rawquerystring: "shipment_recepient_name6:New york",
querystring: "shipment_recepient_name6:New york",
parsedquery: "+shipment_recepient_name6:New +shipment_recepient_name1:york ", parsedquery_toString: "+shipment_recepient_name6:New +shipment_recepient_name1:york ",
我的疑问是我正在搜索field6以及为什么其余的单词搜索field1(我的默认搜索字段)。你可以建议一个模式,我可以搜索地址并根据最高匹配分数返回res - < / p>
我想搜索纽约,其中一个字段中的单词包含逗号分隔的地址。
答案 0 :(得分:0)
您是否尝试对查询进行网址编码:
http://localhost:8080/solr/select?q=shipment_recepient_name6:New%20york
此外,由于您需要精确的词组匹配,请尝试使用引号。
同样非常重要的是,你向Solr投掷的这些句子最终会在solr的索引中查找。为了检验这一点,你可以使用一个名为Luke的好工具(非常适合初学者在背景中弄清楚它是如何工作的。)
对于高级查询,请参阅以下资源:
http://www.lucidimagination.com/blog/2010/05/23/whats-a-dismax/
http://wiki.apache.org/solr/DisMaxQParserPlugin
http://wiki.apache.org/solr/ExtendedDisMax
http://www.lucidimagination.com/blog/2009/02/22/exploring-query-parsers/
http://www.lucidimagination.com/blog/2011/08/08/solr-powered-isfdb-part-11/