我正在使用Apache Solr进行搜索。我使用数据导入处理程序从mysql表中导入数据。但是当我使用q=KOHLI q=lastname:KOHLI ,我没有得到任何结果。

这是q=lastname:KOHLI

{
  "responseHeader": {
      "status": 0,
      "QTime": 1,
      "params": {
      "q": "lastname:KOHLI",
      "indent": "true",
      "wt": "json",
      "_": "1427802213299"
    }
  },
  "response": {
     "numFound": 1,
     "start": 0,
     "docs": [
      {
        "lastname": "KOHLI",
        "town": "DELHI",
        "id": "2",
        "firstname": "VIRAT",
        "_version_": 1497158663291273200
      }
    ]
  }
}

schema.xml中:

<copyField source="firstname" dest="text"/>
<copyField source="lastname" dest="text"/>
<copyField source="town" dest="text"/>
<field name="firstname" type="text_general" indexed="true" stored="true"/>
<field name="lastname" type="text_general" indexed="true" stored="true"/>
<field name="town" type="text_general" indexed="true" stored="true"/>`

#1楼 票数:1

您正在使用查询解析器吗? 如果是,在文件solrconfig.xml中 ,您在requestHandler中使用的查询字段是什么? qf参数)。 如果您没有字段姓氏 ,这是正常现象。

如果不使用查询解析器,则在文件schema.xml中defaultSearchField是什么?

您可以添加Solr文件的摘要吗?

#2楼 票数:1 已采纳

当您不指定搜索字段时,它将搜索默认搜索字段。 如果要执行这样的搜索,则可以创建新字段并将要使其成为搜索目标的所有其他字段复制到该字段,然后将其设置为默认搜索字段。

以下是一些资源:

#3楼 票数:0

这是因为您没有正确设置默认搜索字段。 如果您没有在“ q”中传递字段名称,它将搜索输入到默认字段,该默认字段是您在项目的配置文件中设置的。

要设置默认字段,您可以采用以下两种方法之一:

  1. 在您的schema.xml中,将<defaultSearchField>id</defaultSearchField>更改为<defaultSearchField>lastname</defaultSearchField>

  2. 在您的q中使用q={!type=dismax qf=lastname}KOHLI (如果在Web端口中,请删除“ q =“)

参考:

请参阅查询类型简表

https://archive.apache.org/dist/lucene/solr/ref-guide/apache-solr-ref-guide-4.9.pdf

希望它能有所帮助。 谢谢。

  ask by Nagendra translate from so

未解决问题?本站智能推荐:

1回复

在Apache-Solr中搜索部分单词

我已经设置了solr,我想通过从该单词中提供字符来搜索单词。例如:如果我给“ uni”一个单词,则该单词为“大学”,则该单词不返回任何内容。 我用的字段类型是文本。 defaultsearchfield是文本,copyfield是文本。 谢谢。 无人
1回复

Solr的部分搜索

我将Apache Solr与Drupal一起使用。 问题是它与确切的单词匹配。 示例:搜索“ Hello”将仅返回单词Hello,而不返回以hello开头的另一个单词。 如何配置Apache Solr搜索部分单词? 亲切地
1回复

通过文本进行Solr搜索

我在通过查询在Solr中搜索文档时遇到问题。 该文档如下所示: 如果我使用查询text:GLLMRC86E28L736搜索,则正确找到了该文档。 如果我尝试使用查询text:GLLMRC86E28L736X我找不到文档,为什么会这样? 在我的架构中,字段text声明为<
1回复

如何解决solr中的org.apache.solr.common.SolrException?

使用DIH在solr中建立索引时出现以下错误。 错误是 我的金额字段架构为 请帮忙 ..
1回复

apache / SOLR:通过https://域名访问solr服务器

我一直在像http IP上使用solr搜索 但是出于安全原因,现在我需要有一个域名+ https之类的 要么 (?) 无论哪种方式我都不知道如何配置我的apache conf vhost文件... 任何想法? PS。 我已经为我的域https://examp
1回复

solr无法以精确值搜索

我正在使用Solr 4.1.0,但遇到一个奇怪的问题。 如果我为搜索字段提供了一个值,即使是精确值或涉及通配符,它​​也会为我提供0个搜索结果。 另一方面,如果我只给出字段名称和*代替值,我将得到所有结果。 另外,如果我在文本字段中进行搜索,即我在其中复制了所有字段的值,则它会为我提供
1回复

SOLR在多个表上打开搜索

假设我有authors , publishers , books ,其中authors或publishers可能存储有零本书 我如何索引(即config data-congig.xml / schema.xml)我的表,以便我的用户可以自由键入书名,出版商或作者的名字并找到一些结果?
1回复

Solr不搜索以“ e”结尾的单词

我是Solr的新手,现在面临一个奇怪的问题。 当我搜索以“ e”结尾的单词时,它始终不返回任何结果。 例如: 假设数据库上有一条记录“ QWERTY”。 当搜索词为“ QWERT”时,它返回记录“ QWERTY”。 当搜索词为“ QWERTY”时,它返回记录“ QWERTY”。