Det tænker du sikkert, fordi der ikke er nogen UpdateJoinStep
skriv meget ligesom der er et SelectJoinStep
at det ikke er muligt at bruge en join med opdateringer i jOOQ. Men pas på at SelectJoinStep
er blot bekvemmelighed. JOIN
operator er en operator, der forbinder to tabeller, ikke et nøgleord i SQL. Således understøtter jOOQ det som en operator på Table
type. Brug din SQL-opdatering som eksempel:
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"))
Du kan videregive ovenstående tabeludtryk til DSLContext.update(Table)
som enhver anden. Jeg formoder, at dette forælder dit resterende spørgsmål?