5

ファセットベースの検索では、検索結果の doc 要素には文字列 (複数の単語) の形式の値を持つフィールドがありますが、ファセットでは、すべての値は単一の単語を含む文字列の形式です。以下はsolr検索結果のサンプルです。

<result>
   <doc>
       <str name="fieldA">abc1 efg1 ijk1</str>
       <str name="fieldA">abc2 efg2 ijk2</str>
       <str name="fieldA">abc3 efg3 ijk3</str>
       <arr name="fieldD">
           <str>abc1 efg1 ijk1</str>
           <str>abc2 efg2 ijk2</str>
           <str>abc3 efg3 ijk3</str>
       </arr>
   </doc>
</result>
<lst name="facet_counts">
    <lst name="facet_queries">
       <int name="fieldB:ab">some_number</int>
    </lst>
    <lst name="facet_fields">
       <lst name="fieldA">
            <int name="abc1">1</int>   I want <int name="abc1 efg1 ijk1">1</int>
            <int name="efg1">1</int>
            <int name="ijk1">1</int>
       </lst>   
    </lst>
</lst>

Schema.xml にはフィールドがあります - 次のように fieldA、fieldB、fieldC、および fieldD

  <field name="fieldA" type="text_general" stored="true" indexed="true"/>
  <field name="fieldB" type="text_general" stored="true" indexed="true"/>
  <field name="fieldC" type="text_general" stored="true" indexed="true"/>
  <field name="fieldD" type="text_general" stored="true" indexed="true"/>

  <copyField source="fieldA" dest="fieldD"/>
  <copyField source="fieldB" dest="fieldD"/>
  <copyField source="fieldC" dest="fieldD"/>

フィールド値の複数の単語の文字列と同じように、複数の単語の文字列のファセット値が必要です。提案してください。

4

1 に答える 1