2017-02-28 8 views
0

これはちょっと混乱しています。次のように私は、集計を作成ruflin/elasticaのDateHistogram集約にフィルタを追加する

$aggregation = new DateHistogram('clicks_by_day', 'date', 'day'); 
$query->addAggregation($aggregation); 

今、この集計では、私はこの集計に範囲フィルタを適用したいです。 (価格が0より大きいクリック)。

だから私は実際にそれを行う方法が少し混乱していますか? setFilterメソッドはありませんが、私はそれを行う方法になります。

誰でも私にこれを手伝うことができますか?ここではそれがどのように動作するか、自分自身を発見

答えて

0

:集約を作成

$filter = new Filter('paid', new Query\Range('price', ['gt' => 0])); 
  • $aggregation = new DateHistogram('clicks_by_day', 'date', 'day');

  • は、フィルタに集計を追加します。

    1. は、フィルタの作成

      $aggregation = $filter->addAggregation($aggregation);

    最後のステップは、適用されたフィルタを用いて凝集を返します。それは期待通りに動作します。

  • 関連する問題