[ 
https://issues.apache.org/jira/browse/FLINK-13999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16945917#comment-16945917
 ] 

Dawid Wysakowicz commented on FLINK-13999:
------------------------------------------

Hi, I had a bit more time to have a proper look at this problem. [~dian.fu] is 
right. It is an error in the example. The row with timestamp {{'01-Apr-11 
10:00:04'}} obviously cannot start a new match as it exceeds the average of 15 
(25/1 > 15).

I would suggest two changes to the example:
1. Change the skip strategy to the default {{AFTER MATCH SKIP PAST LAST ROW}}, 
as the strategy here is not important for the example.
2. Add a new at the end to get two output rows. I suggest to have:

input:
{code}
symbol         rowtime         price    tax
======  ====================  ======= =======
'ACME'  '01-Apr-11 10:00:00'   12      1
'ACME'  '01-Apr-11 10:00:01'   17      2
'ACME'  '01-Apr-11 10:00:02'   13      1
'ACME'  '01-Apr-11 10:00:03'   16      3
'ACME'  '01-Apr-11 10:00:04'   25      2
'ACME'  '01-Apr-11 10:00:05'   2       1
'ACME'  '01-Apr-11 10:00:06'   4       1
'ACME'  '01-Apr-11 10:00:07'   10      2
'ACME'  '01-Apr-11 10:00:08'   15      2
'ACME'  '01-Apr-11 10:00:09'   25      2
'ACME'  '01-Apr-11 10:00:10'   28 (change this value to have a nicer average in 
the result)      1
'ACME'  '01-Apr-11 10:00:11'   30      1
{code}

output:
{code}
 symbol       start_tstamp       end_tstamp          avgPrice
=========  ==================  ==================  ============
ACME       01-APR-11 10:00:00  01-APR-11 10:00:03     14.5
ACME       01-APR-11 10:00:05  01-APR-11 10:00:10     14.0
{code}

> Correct the documentation of MATCH_RECOGNIZE
> --------------------------------------------
>
>                 Key: FLINK-13999
>                 URL: https://issues.apache.org/jira/browse/FLINK-13999
>             Project: Flink
>          Issue Type: Bug
>          Components: Documentation
>            Reporter: Dian Fu
>            Priority: Major
>
> Regarding to the following 
> [example|https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/streaming/match_recognize.html#aggregations]
>  in the doc:
> {code:java}
> SELECT *
> FROM Ticker
>     MATCH_RECOGNIZE (
>         PARTITION BY symbol
>         ORDER BY rowtime
>         MEASURES
>             FIRST(A.rowtime) AS start_tstamp,
>             LAST(A.rowtime) AS end_tstamp,
>             AVG(A.price) AS avgPrice
>         ONE ROW PER MATCH
>         AFTER MATCH SKIP TO FIRST B
>         PATTERN (A+ B)
>         DEFINE
>             A AS AVG(A.price) < 15
>     ) MR;
> {code}
> Given the inputs shown in the doc, it should be:
> {code:java}
>  symbol       start_tstamp       end_tstamp          avgPrice
> =========  ==================  ==================  ============
> ACME       01-APR-11 10:00:00  01-APR-11 10:00:03     14.5{code}
> instead of:
> {code:java}
>  symbol       start_tstamp       end_tstamp          avgPrice
> =========  ==================  ==================  ============
> ACME       01-APR-11 10:00:00  01-APR-11 10:00:03     14.5
> ACME       01-APR-11 10:00:04  01-APR-11 10:00:09     13.5
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to