JOOQ - 如果为空则条件映射到对象

问题描述 投票:0回答:1

我想实现这样的目标。这可能吗?

context.select(
 when(PRE_PLEADING.ID.isNull(), value((Object) null))
 .otherwise(row(PRE_PLEADING.ID,
                PRE_PLEADING.TITLE,
).mapping(ReceivedPleadingSummary::new)))
.from(...)

我得到了 jOOQ;糟糕的 SQL 语法

spring-boot jooq
1个回答
0
投票

有一项任务需要审查 jOOQ 的 API 的大部分内容,以允许比现在更频繁地接受嵌套记录,请参阅:

目前,这不太可能,主要是因为很难在所有方言中进行模拟,包括许多本身不支持行值表达式上的表达式的方言。

jOOQ 有

Functions::nullOnAllNull
API,它允许您完全在客户端中做您想做的事情:

context.select(
  row(PRE_PLEADING.ID, PRE_PLEADING.TITLE)
  .mapping(nullOnAllNull(ReceivedPleadingSummary::new)))
.from(...)

这应该可以解决问题吗?

© www.soinside.com 2019 - 2024. All rights reserved.