solr StatsComponent(聚合统计)

StatsComponent

转载请出自出处:http://eksliang.iteye.com/blog/2169134

http://eksliang.iteye.com/

一、概述

       Solr可以利用StatsComponent 实现数据库的聚合统计查询,也就是min、max、avg、count、sum的功能

 

二、参数

参数 含义
stats 是否开启stats(true/false)
stats.field 添加一个字段来统计,可以有多个
stats.facet  在给定的面返回值的子结果。

 

三、参考实例

参考实例一:查询参数

 

q=*:* 
&stats=true
&stats.field=price
&stats.field=popularity
&rows=0

 返回结果如下:

 

 


 
  
    0.0        --最小值
    2199.0     --最大值
    5251.2699999999995 --总和
    15                   --记录数,也就是多少行记录
    11                 --结果集中,有多少条记录是空值
    6038619.160300001 --平方和(x1^2 + x2^2+xn^2)
    350.08466666666664        --平均数(x1+x2+xn)/n
    547.737557906113        --标准差
  
  
    0.0
    10.0
    90.0
    26
    0
    628.0
    3.4615384615384617
    3.5578731762756157
  
 

 参数含义如下:

返回字段 字段含义
min 最小值
max 最大值
sum 总和
count 记录数,也就是多少行记录
missing 结果集中,有多少条记录是空值
sumOfSquares 平方和(x1^2 + x2^2+xn^2)
mean  平均数(x1+x2+xn)/n
stddev 标准差

 

 

参考实例二:查询参数如下

 

q=*:* 
&stats=true
&stats.field=price
&stats.field=popularity
&stats.facet=inStock
&rows=0

返回结果如下所示:

 

 


 
  
  0.0
  2199.0
  5251.2699999999995
  15
  11
  6038619.160300001
  350.08466666666664
  547.737557906113
  
   
      --统计的是:在返回结果中inStock等于false部分,price的统计
      11.5   --在inStock等于false的记录中pirce的最小值
      649.99 --在inStock等于false的记录中pirce的最大值
      1161.39--在inStock等于false的记录中pirce的总和
      4        --inStock等于false的记录数
      0      --在inStock等于false的记录中pirce等于空的记录
      653369.2551--在inStock等于false的记录中pirce的平方和
      290.3475--在inStock等于false的记录中pirce的平均值
      324.63444676281654--在inStock等于false的记录中pirce的标准差
    
    
      0.0
      2199.0
      4089.879999999999
      11
      0
      5385249.905200001
      371.8072727272727
      621.6592938755265
    
   
  
 

  

 

温馨提示:如果统计的列不是数字类型。而是字符串,那么统计的结果中只有如下列

参考实例如下:查询参数

q=*:*
&stats=true
&stats.field=CAR_NUM
&rows=0

 返回结果如下所示:

 


  
	
		08449
		黑ZZ6T8警
		9999999
		0
		
	
   

 

 官方API地址:http://wiki.apache.org/solr/StatsComponent

 

你可能感兴趣的:(solr)