我正在使用solr的stats字段返回一些信息,虽然它很有用,但它包含了大量我不需要的数据。
查询:
&stats=true&stats.field=name&stats.calcdistinct=true
返回每个非重复/唯一值,但默认情况下,它列出找到的 * 每个 * 唯一值--在本例中,我不希望这样--我只希望它返回找到的 number 个结果。当非重复计数小于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,
}}}}
1条答案
按热度按时间q9rjltbz1#
向查询中添加本地参数;例如:
如果
stats.calcDistinct
为true,则将计算“countDistinct”和“distinctValues”统计信息,并将其包含在响应中,因此您需要禁用distinctValues
,以便从响应中排除值列表。