Sql 为什么这个UPDATE语句在H2中失败?

Sql 为什么这个UPDATE语句在H2中失败?,sql,h2,Sql,H2,此UPDATE语句在针对Postgres运行时有效,但在针对H2运行时失败。等价的H2语句是什么 UPDATE award_details SET award_id = a.id FROM awards a WHERE a.award_details_id = award_details.id; H2错误消息为: SQL State : 42000 Error Code : 42000 Message : Syntax error in SQL statement "​​[*] UPD

此UPDATE语句在针对Postgres运行时有效,但在针对H2运行时失败。等价的H2语句是什么

UPDATE award_details
SET award_id = a.id
FROM awards a
WHERE a.award_details_id = award_details.id;
H2错误消息为:

SQL State  : 42000
Error Code : 42000
Message    : Syntax error in SQL statement "​​[*]
UPDATE AWARD_DETAILS
SET AWARD_ID = A.ID
FROM AWARDS A
WHERE A.AWARD_DETAILS_ID = AWARD_DETAILS.ID"; SQL statement:

您当前的更新语法看起来是Postgres样式。而是使用相关子查询更新语法:

UPDATE award_details aw
SET award_id = (SELECT a.id FROM awards a WHERE a.award_details_id = aw.id);

根据其文档(),H2中的
UPDATE
不支持
FROM
子句。