繁体   English   中英

Solr 搜索查询动态字段索引

[英]Solr search query for dynamic fields indexed

我正在我的项目中实现 solr 搜索。 我有一个关于如何搜索在 solr 索引中创建的动态字段的问题,例如:- 这是在索引中形成的标签

我正在尝试使用此查询 Employee_* = 172 从 solr 进行搜索

如果搜索方式不正确,请帮助我。

在您的查询中,您需要准确定义要搜索的具体字段,例如Employee_aEmployee_b (或您使用过的任何动态字段)。 您无法通过在查询中的字段名称中使用通配符来搜索所有动态字段。

这是一个解决方法:

  • 创建一个(静态)copyField
  • 将动态字段复制到(静态)copyField
  • 查询复制字段

您的 schema.xml 可能如下所示:

   <dynamicField name="Employee_*" type="string" indexed="true"  stored="true"/>
   <field name="emp_static"  type="string" indexed="true"  stored="true" multiValued="true"/>
   <copyField source="Employee_*"    dest="emp_static"/>

现在您可以通过以下方式查询 solr:

select?q=emp_static:"172"

您甚至可以调整它而不存储/索引动态字段(因为您可能不会查询它......)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM