SQL 更新 jOOQ 对 case 子句的支持

SQL Update case clause support by jOOQ

请告知jOOQ库在SQL更新语句中是否支持case子句? https://www.jooq.org/ 我的意思是什么相当于

UPDATE TABLE1 SET status = case 
            when status = 'status1' then 'status2'
            when status = 'status2' then 'status3'
            end

我在他们的教程中看到了 select 语句的示例,但不幸的是没有更新。会不会是这样的?

DSL.update(DSL.table("table1")).set(DSL.field("status"), DSL.case(...))

幸运的是,jOOQ 中的 SELECTUPDATE 语句支持在你的语句中 column expressions are dealt with. Hence, you will just use the CASE expression support 的任意性方面没有区别。

您可以直接使用 DSL.case_() or DSL.when() 创建 CASE 表达式。