Probabilmente lo stai pensando perché non c'è UpdateJoinStep
digita come se ci fosse un SelectJoinStep
che l'utilizzo di un join con aggiornamenti non è possibile in jOOQ. Ma attenzione che SelectJoinStep
è mera comodità. Il JOIN
operator è un operatore che collega due tabelle, non una parola chiave in SQL. Pertanto, jOOQ lo supporta come operatore sulla Table
genere. Utilizzando il tuo aggiornamento SQL come esempio:
Field<Long> userId = DSL.field("user_nested.id", Long.class);
create
.update(USER.join(TEAM).on(TEAM.ID.eq(USER.TEAM_ID)))
.set(USER.NAME, (concat(USER.NAME, "some text")))
.where(TEAM.STATE.equal("test"))
Puoi passare l'espressione della tabella sopra a DSLContext.update(Table)
come tutti gli altri. Sospetto che questo renda obsoleta la tua domanda rimanente?