2015-04-06 110 views
-1

我是esper epl查詢的新手。我想知道是否可以在運行時更改EPL查詢。這意味着我有一個可用於更改ESPER中的時間長度,記錄數的表單。它就像這,增加在epl查詢的時間長度,在事件中的記錄數。同樣我想以實用的方式改變參數。我想知道這是可能的,如果是的話,給我一些提示開始。 謝謝將參數傳遞給ESPER EPL查詢?

回答

1

根據您的實際需求,您可以使用Variables。 從Esper Docs

除了通過創建變量語法創建變量,所述 運行時和發動機配置API還允許添加變量。該 下面的代碼片段演示瞭如何使用運行時配置API 來創建一個字符串類型的變量:

epService.getEPAdministrator().getConfiguration().addVariable("myVar", String.class, "init value"); 

然後你可以use variables在查詢中。例如(再次從埃斯佩爾文檔):

下一個語句假定一個名爲「var_threshold」變量被 創建舉行總價閾值。聲明輸出 當總價格爲象徵,是大於當前 閾值的事件:

select symbol, sum(price) 
    from TickEvent group by symbol having 
    sum(price) > var_threshold 

所以,如果你確切地知道你想要參數化的東西,那麼你可以讓你的查詢更加動態。

+0

謝謝這就是我想要的。 – Sajithv 2015-04-06 05:19:48