SQL语句转换为EPL

时间:2015-08-18 03:13:15

标签: esper complex-event-processing

我是NEsper的新手,我需要将SQL语句转换为EPL

以下是我的SQL场景:
1。 A 是包含名为“Data”的字段的主表, B 是用于在A中存储不同“数据”值的另一个表
2。如果有一个日志进入A,数据值为“TEST”,如果B中没有“TEST”,我们将把“TEST”写入B,并将当前时间保持在B
3。同时确实触发了一些事件
4。如果仍有记录进入A并且具有相同的数据值“TEST”,我们将无所作为,因为B中已经有“TEST”记录
5。 2小时后,我们将清除B中的“TEST”记录,并循环步骤2~5

我已经阅读了NEsper文档,但是仍然可以弄清楚EPL可以实现与上面相同的东西,名为Window?表?或任何其他关键字 你能给我一些关于EPL对我的建议或提示吗? 非常感谢。

1 个答案:

答案 0 :(得分:0)

你可以使用" firstunique"窗口只保留第一个独特的项目。您可以将其与时间窗口结合使用,从而保留给定时间内的第一个唯一项目。您可以使用子查询来检查项目是否存在于命名窗口中。