1

索尔 4.3

这是我的查询请求参数:

<lst name="responseHeader">
  <int name="status">0</int>
  <int name="QTime">15</int>
  <lst name="params">
    <str name="facet">true</str>
    <str name="indent">true</str>
    <str name="q">*:*</str>
    <str name="_">1373713374569</str>
    <arr name="facet.field">
      <str>{!ex=city}CityId</str>
      <str>{!ex=company}CompanyId</str>
    </arr>
    <str name="wt">xml</str>
    <str name="fq">{!tag=city}CityId:729 AND {!tag=company}CompanyId:16122</str>
  </lst>
</lst>

这是查询响应“Facet”的内容:

<lst name="facet_counts">
  <lst name="facet_queries"/>
  <lst name="facet_fields">
    <lst name="CityId">
      <int name="11">100171</int>
      <int name="1404">89406</int>
      <int name="0">77477</int>
      <int name="1366">65780</int>
      <int name="1362">58092</int>
      <int name="729">29213</int>
      <int name="798">28975</int>
               ...
      <int name="7262">808</int>
      <int name="432">776</int>
      <int name="1146">772</int>
      <int name="1653">765</int>
      <int name="1078">668</int>
      <int name="814">667</int>
      <int name="2049">402</int>
      <int name="456">401</int>
      <int name="401">390</int>
    </lst>
    <lst name="CompanyId">
      <int name="16122">971</int>
      <int name="69">0</int>
      <int name="71">0</int>
      <int name="72">0</int>
      <int name="79">0</int>
      <int name="80">0</int>
      <int name="85">0</int>
      <int name="88">0</int>
      <int name="94">0</int>
                ...
      <int name="98">0</int>
      <int name="104">0</int>
      <int name="112">0</int>
      <int name="113">0</int>
      <int name="118">0</int>
      <int name="123">0</int>
      <int name="126">0</int>
      <int name="131">0</int>
      <int name="136">0</int>
      <int name="139">0</int>

    </lst>
  </lst>
  <lst name="facet_dates"/>
  <lst name="facet_ranges"/>
</lst>

您可以看到 CityId 的“Facet”是正确的,它不包括 {! Tag = city} CityId: 729个查询,但是CompanyId的“Facet”不正确,他不排除{!Tag = company} CompanyId:16122 个查询。如何解决?

4

2 回答 2

1

使用:fq={!tag=city}CityId:729&fq={!tag=company}CompanyId:16122

于 2013-07-15T07:52:28.407 回答
1

你可以尝试fq=!tag=city}CityId:729&fq={!tag=company}CompanyId:16122作为单独的标签,它应该作为 AND 工作。

于 2013-07-15T08:26:36.857 回答