仅返回 solr 统计组件中的特定统计数据



我使用solr的stats字段来返回一些信息,虽然很有用,但它包含了大量我不需要的数据

查询:

&stats=true&stats.field=name&stats.calcdistinct=true

返回每个不同的/唯一的值,但是默认情况下,它列出它找到的每个唯一的值——在这种情况下,我不想这样做——我只希望它返回找到的结果的数字。当不同的计数低于100左右时,这很好,但是当它是56,000时,我被迫向浏览器返回56,000个不同的值,这是昂贵的:

"stats":{
    "stats_fields":{
      "name":{
        "min":"Alan",
        "max":"Zeke",
        "count":197890,
        "missing":0,
        "distinctValues":["Alan",
          "Bob",
          "Matt",
          "Chan",
          "Peter",
          "Zeke"],
        "countDistinct":56872,  // <--- 56,872 lines get returned...
        "facets":{}}}}}

有没有办法告诉solr我只想让返回

stats --> stats_fields --> name --> countDistinct而不是任何其他stats属性,如:

"stats":{
        "stats_fields":{
          "name":{
            "countDistinct":56872,  
            }}}}

为查询添加一个本地参数;例如:

&stats=true&stats.field=name&stats.calcdistinct=true&{!distinctValues=false}name

如果stats.calcDistinct为true,则countDistinct"one_answers";distinctValues"统计数据将被计算并包含响应,因此您需要禁用distinctValues,以便从响应中排除值列表。

最新更新