Event Time Temporal Table Join在版本控制的表中需要主键和行时间属性,但找不到行时间属性



我曾尝试使用查找联接,但我发现了这个问题:

SELECT
>   e.isFired,
>   e.eventMrid,
>     e.createDateTime,
>   r.id AS eventReference_id,
>     r.type
> FROM Event e
> JOIN EventReference FOR SYSTEM_TIME AS OF e.createDateTime AS r
>   ON r.id = e.eventReference_id;

[ERROR]无法执行SQL语句。原因:org.apache.flink.table.api.ValidationException:事件时间时态表联接需要主键和版本表中的行时间属性,但找不到行时间属性

Flink SQL计划器将该查询解释为临时联接还是查找联接取决于右侧表的类型。在这种情况下,我想您还没有使用查找源。您的时间属性可能定义不正确。

临时(时间版本(联接需要

  • 版本控制表主键上的相等谓词
  • 时间属性

和查找联接需要

  • 查找源连接器(例如JDBC、HBase、Hive或其他自定义连接器(
  • 相等联接谓词
  • 将处理时间属性与FOR SYSTEM_TIME AS OF(以防止需要更新联接结果(

相关内容

  • 没有找到相关文章

最新更新