[ https://issues.apache.org/jira/browse/CALCITE-1911?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16117548#comment-16117548 ]
Julian Hyde commented on CALCITE-1911: -------------------------------------- A few review comments: * Add comments in Match etc. that interval can be null. Not-null is usually assumed. * Interval 0 is ok, right? So the message should say "Interval must be non-negative". * I don't think you need SqlIntervalQualifier.CONV. org.apache.calcite.avatica.util.TimeUnit.multiplier is probably sufficient. * In Match.explainTerms, if should ignore null interval, not print "interval: null". * I am surprised that you needed to add so much code for intervals in SqlParserUtil, and indeed in reference.md. Were you not able to re-use existing interval literal support? * As I said earlier, we need a way to specify ordering. Maybe there is a rowtime column on streams. But this clause also needs to work on tables, which definitely don't have a rowtime column. > Support within clause in MATCH_RECOGNIZE > ---------------------------------------- > > Key: CALCITE-1911 > URL: https://issues.apache.org/jira/browse/CALCITE-1911 > Project: Calcite > Issue Type: Bug > Reporter: Dian Fu > Assignee: Julian Hyde > Labels: match > > Window is an important feature for pattern detection, it defines the time > duration for the events to match a pattern. Here is an example from > [doc|https://docs.oracle.com/middleware/1213/eventprocessing/cql-reference/GUID-34D4968E-C55A-4BC7-B1CE-C84B202217BD.htm#CQLLR2119]: > {code} > SELECT T.Ac2, T.Bc2, T.Cc2 > FROM S > MATCH_RECOGNIZE( > MEASURES A.c2 as Ac2, B.c2 as Bc2, C.c2 as Cc2 > PATTERN (A (B+ | C)) within 3000 milliseconds > DEFINE > A as A.c1=10 or A.c1=25, > B as B.c1=20 or B.c1=15 or B.c1=25, > C as C.c1=15 > ) as T > {code} -- This message was sent by Atlassian JIRA (v6.4.14#64029)