【问题标题】:SOLR multiple facet w querySOLR 多方面 w 查询
【发布时间】:2012-03-25 04:37:04
【问题描述】:

我需要根据多个类别对 sorl 进行分面,确切地说是 3 个类别。我遇到的问题是我需要不同的方式来处理本质上是单独的查询,但我正在尝试确定我是否可以用一个来完成。从本质上讲,我想做一个 filter.query 但不是计数,而是我想获取匹配项的值。

问题是我对相同值的多个字段进行匹配,可以说 field1=*bah* OR field2=*bah* or field3=*bah* 和我在 field1、field2 和 field3 上分面

查询确实返回了那些字段匹配的文档,但在方面,对于 field1,不只包括 matchign field1 bah.. 但包括匹配 field2 和 field3 的文档,他们的 field1 值不是 bah时间>。

id 基本上喜欢使用 fq={!tag} 和 facet.field{!ex} 来生成 field1 的 facets,只有 field1 匹配值,facet 2 没有 field2 matchign 值......等等。

这甚至可以通过 solr 中的一个查询来实现吗?

这是我的基本设置

<document>
  <field1>bah boo</field1>
  <field2>bah bing</field2>
  <field3>boo bar</field3>
</document>
<document>
  <field1>bar boo</field1>
  <field2>bah bong</field2>
  <field3>bah bar</field3>
</document>
<document>
  <field1>bar boo</field1>
  <field2>ding bah</field2>
  <field3>bog bar</field3>
</document>
<document>
  <field1>ban bah</field1>
  <field2>ban bing</field2>
  <field3>bbah bar</field3>
</document>

我想回来

<facets>
   <field1>
     <str>bah boo</str>
     <str>ban bah</str>
   </field1>
   <field2>
     <str>bah bing</str>
     <str>bah bong</str>
     <str>ding bah</str>
   </field2>
   <field3>
     <str>bah bar</str>
     <str>bbah bar</str>
   </field3>
</facets>

【问题讨论】:

    标签: solr faceted-search


    【解决方案1】:

    如果您在分面中包含突出显示,则您的实际匹配项将在 highlighting 结构中返回。但是,它不会为您提供 number 个匹配项,它只会为您的查询返回的行提供匹配项。实际上,我不确定您是否需要使用 faceting 来完成您在这里尝试做的事情。

    我可能是错的,但您的问题听起来与此类似: How to return column that matched the query in Solr..?

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      相关资源
      最近更新 更多