你看异常信息,提示时态表join的时候需要主键,但是你没有定义。而且你join的时候不需要on吗?


| |
allanqinjy
|
|
allanqi...@163.com
|
签名由网易邮箱大师定制


在2021年05月14日 09:32,hehuiyuan<knowfar...@163.com> 写道:
select ....
FROM  jdqTableSources AS a
JOIN tmmmp FOR SYSTEM_TIME AS OF a.proctime AS b



Caused by: org.apache.flink.client.program.ProgramInvocationException: The
main method caused an error: Temporal Table Join requires primary key in
versioned table, but no primary key can be found. The physical plan is:
FlinkLogicalJoin(condition=[AND(=($0, $4),
__INITIAL_TEMPORAL_JOIN_CONDITION($3, __TEMPORAL_JOIN_LEFT_KEY($0),
__TEMPORAL_JOIN_RIGHT_KEY($4)))], joinType=[inner])
FlinkLogicalCalc(select=[opt, src, cur, PROCTIME() AS proctime])
FlinkLogicalTableSourceScan(table=[[default_catalog, default_database,
jdqTableSources]], fields=[mid, db, sch, tab, opt, ts, ddl, err, src, cur,
cus])
FlinkLogicalSnapshot(period=[$cor0.proctime])
FlinkLogicalCalc(select=[item_sku_id, premium, cate_lev, type, borc])
FlinkLogicalTableSourceScan(table=[[myhive, dev,
dev_brokenscreen_insurance_sku_info]], fields=[item_sku_id, item_sku_name,
premium, cate_lev, type, borc, plan_code, subjection_b, product_name,
lev_low_price, lev_upp_price, jd_price, shelves_tm, item_first_cate_name,
item_second_cate_name, item_third_cate_name, sure_cate_lev, flag])



--
Sent from: http://apache-flink.147419.n8.nabble.com/

回复