Github user xccui commented on a diff in the pull request: https://github.com/apache/flink/pull/4825#discussion_r144688874 --- Diff: docs/dev/table/tableApi.md --- @@ -498,6 +499,23 @@ Table left = tableEnv.fromDataSet(ds1, "a, b, c"); Table right = tableEnv.fromDataSet(ds2, "d, e, f"); Table result = left.join(right).where("a = d").select("a, b, e"); {% endhighlight %} + <p><b>Note:</b> Currently, only time-windowed inner joins can be processed in a streaming fashion.</p> + + <p>A time-windowed join requires a special join condition that bounds the time on both sides. This can be done by two appropriate range predicates (<code> <, <=, >=, ></code>) that compares the <a href="streaming.html#time-attributes">time attributes</a> of both input tables. The following rules apply for time predicates: + <ul> + <li>Time predicates must compare time attributes of both input tables.</li> + <li>Time predicates must compare only time attributes of the same type, i.e., processing time with processing time or event time with event time.</li> + <li>Only range predicates are valid time predicates.</li> + <li>Non-time predicates must not access a time attribute.</li> --- End diff -- @fhueske, I think the last rule about time attribute access could be removed now, right?
---