- All Known Subinterfaces:
TableOptionalOnStep<R>
,TablePartitionByStep<R>
JOIN
clause,
where there must be a join criteria added using an ON
clause
(with a Condition
), or using a USING
clause (with a list
of Field
).
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:
- They're operating on mutable implementations (as of jOOQ 3.x)
- They're less composable and not easy to get right when dynamic SQL gets complex
- They're less readable
- They might have binary incompatible changes between minor releases
- Author:
- Lukas Eder
-
Method Summary
Modifier and TypeMethodDescription@NotNull TableOnConditionStep
<R> Add anON
clause to theJOIN
.@NotNull TableOnConditionStep
<R> Add anON
clause to theJOIN
.@NotNull TableOnConditionStep
<R> Add anON
clause to theJOIN
.@NotNull TableOnConditionStep
<R> @NotNull TableOnConditionStep
<R> @NotNull TableOnConditionStep
<R> Add anON
clause to theJOIN
.@NotNull TableOnConditionStep
<R> Add anON
clause to theJOIN
.@NotNull TableOnConditionStep
<R> onKey()
Join the table on a non-ambiguous foreign key relationship between the two joined tables.@NotNull TableOnConditionStep
<R> onKey
(ForeignKey<?, ?> key) Join the table on a non-ambiguous foreign key relationship between the two joined tables.@NotNull TableOnConditionStep
<R> onKey
(TableField<?, ?>... keyFields) Join the table on a non-ambiguous foreign key relationship between the two joined tables.using
(Collection<? extends Field<?>> fields) Join a table with theUSING(column [, column…])
syntax.Join a table with theUSING(column [, column…])
syntax.
-
Method Details
-
on
-
on
-
on
Add anON
clause to theJOIN
. -
on
Add anON
clause to theJOIN
.NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
- See Also:
-
on
Add anON
clause to theJOIN
.NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
- See Also:
-
on
Add anON
clause to theJOIN
.NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
- See Also:
-
on
Add anON
clause to theJOIN
.NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
- See Also:
-
using
Join a table with theUSING(column [, column…])
syntax.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
-
using
Join a table with theUSING(column [, column…])
syntax.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
-
onKey
Join the table on a non-ambiguous foreign key relationship between the two joined tables.See
onKey(ForeignKey)
for examples.- Throws:
DataAccessException
- If there is no non-ambiguous key definition known to jOOQ. Please note that if you evolve your schema, a previously non-ambiguousON KEY
clause can suddenly become ambiguous on an existing query, so use this clause with care.- See Also:
-
onKey
@NotNull @Support @NotNull TableOnConditionStep<R> onKey(TableField<?, ?>... keyFields) throws DataAccessExceptionJoin the table on a non-ambiguous foreign key relationship between the two joined tables.See
onKey(ForeignKey)
for examples.- Throws:
DataAccessException
- If there is no non-ambiguous key definition known to jOOQ. Please note that if you evolve your schema, a previously non-ambiguousON KEY
clause can suddenly become ambiguous on an existing query, so use this clause with care.- See Also:
-
onKey
Join the table on a non-ambiguous foreign key relationship between the two joined tables.An example:
// There is a single foreign key relationship between A and B and it can // be obtained by A.getReferencesTo(B) or vice versa. The order of A and // B is not important A.join(B).onKey(); // There are several foreign key relationships between A and B. In order // to disambiguate, you can provide a formal org.jooq.Key reference from // the generated Keys class A.join(B).onKey(key); // There are several foreign key relationships between A and B. In order // to disambiguate, you can provide any non-ambiguous foreign key column A.join(B).onKey(B.A_ID);
-