Squ*_*eez 8 mysql database h2 liquibase
作为开发DB,我正在使用MySQL,而对于测试我正在使用H2数据库.以下脚本在MySQL中运行良好,但在H2上失败.
UPDATE `table_a`
JOIN `table_b` ON `table_a`.id=`table_b`.a_id
SET `table_a`.b_id=`table_b`.id
Run Code Online (Sandbox Code Playgroud)
在互联网上我发现h2不支持UPDATE子句JOIN.也许有一种方法可以在没有JOIN子句的情况下重写这个脚本?
顺便说一下,我正在使用liquibase.也许我可以UPDATE用它的xml语言编写子句?
我尝试了以下脚本
UPDATE table_a, table_b
SET table_a.b_id = table_b.id
WHERE table_a.id = table_b.a_id
Run Code Online (Sandbox Code Playgroud)
但我仍然遇到错误.似乎,H2不支持在一个查询中更新多个表.如何在两个不同的查询中重写此查询以收集ID并插入它们?
尝试这样的事情:
update table_a a
set a.b_id = (select b.id from table_b b where b.a_id = a.id)
where exists
(select * from table_b b where b.a_id = a.id)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3327 次 |
| 最近记录: |