[
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)