0

私はタプルを持っています:

public class mytuple
{
    private int status;

    private int userid;
    private int location;

    private int count1;
    private int count2;

    // corresponding getter settrs included.
}

2 つの esper ステートメント EPL を作成します。

select mytuple.userid as userid, sum(count1) as count1, sum(count2) as count2
from eventStream where mytuple.status = -1
group by userid, location;

and another EPL statement:

select mytuple.userid as userid, sum(count1) as count1, sum(count2) as count2
from eventStream where mytuple.status = 1
group by userid, location;

イベント ストリームは構成内に登録されます。

私が直面している問題は、2 つのイベントが送信されていることです。1 つは status= -1、もう 1 つは status = +1 で、最初の EPL ステートメントで +2 の増分カウントを取得します。

ただし、イベントが 1 つしか送信されていない場合、ストリームは完全に機能します。ここに欠けているものはありますか??

作成されたエスパービューに別のリスナーがあると仮定します。

4

1 に答える 1

0

http://esper.codehaus.org/about/esper/mailinglist.htmlで説明されているように、Esper ユーザー メーリング リストでこれを実行 することをお勧めします。

フィルタリングの場合は、条件を括弧で囲みます。これが推奨される表記法です。

select ....from eventStream(mytuple.status = 1) ....

于 2013-08-12T14:26:52.833 に答える