Wahrscheinlich denken Sie das, weil es keinen UpdateJoinStep
gibt Geben Sie ein, ähnlich wie bei einem SelectJoinStep
dass die Verwendung eines Joins mit Updates in jOOQ nicht möglich ist. Aber Vorsicht, SelectJoinStep
ist reine Bequemlichkeit. Der JOIN
operator ist ein Operator, der zwei Tabellen verbindet, kein Schlüsselwort in SQL. Daher unterstützt jOOQ es als Operator auf der Table
Typ. Am Beispiel Ihres SQL-Updates:
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"))
Sie können den obigen Tabellenausdruck an DSLContext.update(Table)
übergeben wie jeder andere. Ich vermute, dass dies Ihre verbleibende Frage überholt?