Шаблон EPL, чтобы соответствовать последним A и всем B с фильтром
Я пытаюсь найти шаблон EPL, который будет соответствовать последнему A, за которым следует любой & all B(prop1=A.prop1).
Используя ту же последовательность, как определено в документации Esper...
A1 B1 C1 B2 A2 D1 A3 B3 E1 A4 F1 B4
Я ищу шаблон, который будет соответствовать {A1,B1} {A1,B2} {A3,B3} {A4,B4}, предполагая, что все они имеют одинаковые значения prop1.
Если быть точным, то после первого совпадения я не хочу, чтобы сопоставитель шаблонов перезагружался и искал следующее событие A.
Любая помощь с благодарностью получена!
1 ответ
Решение
Проведя несколько тестов, выясняется, что ответом является отфильтрованная версия каждого A -> каждого B, уже включенная в примеры Esper...
select * from pattern [every a=A -> every b=B(prop1 = a.prop1) and not A(prop1=a.prop1)]