首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当查询项出现混乱时,Solr搜索结果会发生变化。

问当查询项出现混乱时,Solr搜索结果会发生变化。
EN

Stack Overflow用户
提问于 2020-01-06 16:00:16
回答 1查看 119关注 0票数 0

我用字段索引了一个文件-

  1. 内容(类型:text_general,不可逆:false,索引:true,已存储的
  2. (类型:text_general,不可撤销:false,indexed :true,存储:true)
  3. 标题(类型:text_general,不可逆:false,indexed :true,存储:true)

版权所有的-

资料来源:*

dest :_text_

现在,当我搜索内容字段,查询-苹果交易,我得到6057个文档;

但当我搜索-交易苹果时,我得到了5878个文档。

但是,当对catch-all字段执行相同的搜索时,对于这两个查询(6057文档),我得到相同的结果。

我不理解这里的错误,因为我希望solr在Content字段上搜索这两个查询时给出相同的结果。

我在用-

  • LuceneQParser
  • ClassicSimilarity

关于“内容”字段的两个查询:

苹果贸易

http://localhost:8983/solr/core_name/select?q=Content%3A%20Apple%20trade

  1. 贸易苹果

http://localhost:8983/solr/core_name/select?q=Content%3A%20trade%20Apple

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-07 14:39:33

从刚才添加到问题中的内容来看,假设Lucene查询解析器忽略了:之后的空格,查询是Content:trade <default search field>:Apple --在Content字段中搜索的不是第一个和第二个术语。

当你交换他们的位置时,你在寻找Content:Apple <default search field>:trade。

默认的搜索字段是默认配置中的_text_。由于查询不同,所以可以假设字段中有不同的内容(例如,添加copyField指令后不正确地重新编制索引和清除索引)。

如果要使用轻松映射到用户输入的免费文本搜索,请使用edismax查询解析器(defType=edismax),在q=apple trade中提供查询,并在qf=Content中提供字段名。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59615220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档