SOLR结果不正确

时间:2015-12-11 16:09:10

标签: solr solr5

我在使用SOLR进行搜索时遇到问题。我的架构定义如下:

    <field name="_root_" type="string" indexed="true" stored="false"/>
    <field name="_text_" type="text_general" multiValued="true" indexed="true" stored="true"/>
    <field name="_version_" type="long" indexed="true" stored="true"/>
    <field name="deleted" type="booleans" indexed="true" stored="true"/>
    <field name="description" type="strings" indexed="true" stored="true"/>
    <field name="favorites_count" type="tlongs"/>
    <field name="id" type="string" multiValued="false" indexed="true" required="true" stored="true"/>
    <field name="image" type="strings"/>
    <field name="ingredients" type="strings" multiValued="true" indexed="true" stored="true"/>
    <field name="level" type="tlongs"/>
    <field name="portions" type="tlongs" indexed="true" required="true" stored="true"/>
    <field name="preparation" type="strings"/>
    <field name="rating" type="tdoubles"/>
    <field name="ratings_count" type="tlongs"/>
    <field name="subject" type="strings" indexed="true" required="true" stored="true"/>
    <field name="visible" type="booleans" indexed="true" stored="true"/>

问题是当我尝试搜索&#34;成分&#34;字段。

主要查询:

  

q =(主题:&#34;短语搜索输入&#34;或描述:&#34;短语搜索输入&#34;)   和成分:(&#34;一些成分短语&#34;)

或成分:searchWord

没有components参数的查询工作正常,输出结果正确。

然而,当涉及过滤成分时,无论我使用fq还是直接在查询字符串中,我都会出错或根本没有结果。

成分字段的数据如下:

  

成分:[       成分1,       成分2,       成分3短语]

另一个问题是该成分何时具有&#34;(&#34;或&#34;)&#34;字符和我正在搜索这样的短语 - 无法匹配。

SOLR版本:5.3

有人可以帮我吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

如果没有查看数据并获取更多信息,很难确定确切的原因。但是,您可以按照以下步骤自行解决问题。

  1. 使用Solr管理分析器查看数据如何存储在配料字段中以及如何获取查询。
  2. 确认您正在将数据正确加载到配料字段中。确保您发送的每个值实际存储为单个令牌。
  3. 请记住,您并未将字段标记为字段。这可能会影响搜索。
  4. 在查询中添加“debug = true”参数;您将了解Solr如何“看到”查询