Top Description Methods
org.jooq

public Interface MergeUsingStep<R extends org.jooq.Record>

extends MergeKeyStepN<R extends Record>
Known Direct Implementers
org.jooq.impl.MergeImpl
Static Imports
org.jooq.SQLDialect.CUBRID, .SQLDialect.DERBY, .SQLDialect.FIREBIRD, .SQLDialect.H2, .SQLDialect.HSQLDB, .SQLDialect.MARIADB, .SQLDialect.MYSQL, .SQLDialect.POSTGRES, .SQLDialect.YUGABYTEDB

This type is used for the Merge's DSL API.

Example:


DSLContext create = DSL.using(configuration);

create.mergeInto(table)
      .using(select)
      .on(condition)
      .whenMatchedThenUpdate()
      .set(field1, value1)
      .set(field2, value2)
      .whenNotMatchedThenInsert(field1, field2)
      .values(value1, value2)
      .execute();

Referencing XYZ*Step types directly from client code

It is usually not recommended to reference any XYZ*Step types directly from client code, or assign them to local variables. When writing dynamic SQL, creating a statement's components dynamically, and passing them to the DSL API statically is usually a better choice. See the manual's section about dynamic SQL for details: https://www.jooq.org/doc/latest/manual/sql-building/dynamic-sql.

Drawbacks of referencing the XYZ*Step types directly:

Author
Lukas Eder

Method Summary

Modifier and TypeMethod and Description
public @NotNull MergeKeyStepN<R>
columns(Field<?>... fields)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Set the columns for merge (H2-specific syntax).
public @NotNull MergeKeyStepN<R>
columns(Collection<? extends Field<?>> fields)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Set the columns for merge (H2-specific syntax).
public <T1> @NotNull MergeKeyStep1<R, T1>
columns(Field<T1> field1)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2> @NotNull MergeKeyStep2<R, T1, T2>
columns(Field<T1> field1, Field<T2> field2)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3> @NotNull MergeKeyStep3<R, T1, T2, T3>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4> @NotNull MergeKeyStep4<R, T1, T2, T3, T4>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5> @NotNull MergeKeyStep5<R, T1, T2, T3, T4, T5>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6> @NotNull MergeKeyStep6<R, T1, T2, T3, T4, T5, T6>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7> @NotNull MergeKeyStep7<R, T1, T2, T3, T4, T5, T6, T7>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8> @NotNull MergeKeyStep8<R, T1, T2, T3, T4, T5, T6, T7, T8>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9> @NotNull MergeKeyStep9<R, T1, T2, T3, T4, T5, T6, T7, T8, T9>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> @NotNull MergeKeyStep10<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> @NotNull MergeKeyStep11<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> @NotNull MergeKeyStep12<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> @NotNull MergeKeyStep13<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> @NotNull MergeKeyStep14<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> @NotNull MergeKeyStep15<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> @NotNull MergeKeyStep16<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> @NotNull MergeKeyStep17<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> @NotNull MergeKeyStep18<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> @NotNull MergeKeyStep19<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> @NotNull MergeKeyStep20<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19, Field<T20> field20)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> @NotNull MergeKeyStep21<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19, Field<T20> field20, Field<T21> field21)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> @NotNull MergeKeyStep22<R, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22>
columns(Field<T1> field1, Field<T2> field2, Field<T3> field3, Field<T4> field4, Field<T5> field5, Field<T6> field6, Field<T7> field7, Field<T8> field8, Field<T9> field9, Field<T10> field10, Field<T11> field11, Field<T12> field12, Field<T13> field13, Field<T14> field14, Field<T15> field15, Field<T16> field16, Field<T17> field17, Field<T18> field18, Field<T19> field19, Field<T20> field20, Field<T21> field21, Field<T22> field22)

Deprecated for removal since 3.14. - [#10045] - 3.14.0 - Use the standard SQL MERGE API instead, via DSLContext#mergeInto(Table)
Create a new DSL UPSERT statement (SQLDialect#H2 MERGE) or SQLDialect#HANA UPSERT).
public @NotNull MergeOnStep<R>
using(TableLike<?> table)

Add the USING clause to the SQL standard MERGE statement.

public @NotNull MergeOnStep<R>
usingDual()

Add a dummy USING clause to the SQL standard MERGE statement

This results in USING(SELECT 1 FROM DUAL) for most RDBMS, or in USING(SELECT 1) AS [dummy_table(dummy_field)] in SQL Server, where derived tables need to be aliased.

Inherited from org.jooq.MergeKeyStepN:
keykey