我想使用jooq api構建類似下面的查詢。我可以建立一個jooq查詢到一個偏移量嗎?
select x.*
from x
offset greatest(0, (select count(*) - 1 from x));
通過
select(x.fields()).from(x)
.offset(param(greatest(val(0), select(count().sub(1)).from(x).field(0, Integer.class))))
我敢肯定,我使用的是offset(Param<Integer>)
方法不正確。它似乎是爲偏移量渲染null
。正在構建像這樣的偏移量嗎? (看起來offset
方法與jooq api的其餘部分相比有點受到限制)。
(我知道沒有上下文的查詢似乎效率低下,但它實際上是我想要做的)
謝謝!
問題是:你可以在你的數據庫中做到這一點嗎? (你的數據庫是什麼?) –
是的。可以在postgres中完成。我實際上是用CTE做的,但事實證明它不僅限於CTE。 – dsmith