我正在尝试在 Jooq 中实现类似于下面的 MySql 查询:
Select
CASE WHEN (datecolumn IS NULL)
THEN (@outerval:=@outerval+1)
ELSE (@outerval) END AS consec_set
From some_table;
我们如何在 JOOQ 中拥有 @variable ?
注意:我知道 JOOQ 中 CASE WHEN 的等价物,但只想知道@variable。
Jooq 版本:3.0.1
jOOQ 3.0 目前不支持此功能。我已经为此注册了一个功能请求: https ://github.com/jOOQ/jOOQ/issues/2558
我不确定有多少对变量的支持可以真正以有用的方式添加到 jOOQ 中。但无论如何,您总是可以使用纯 SQL:
Field<Integer> f1 = DSL.field("@outerval:=@outerval+1", Integer.class);
Field<Integer> f2 = DSL.field("@outerval", Integer.class);