- java.lang.Object
-
- org.jooq.impl.TableImpl<R>
-
- org.jooq.impl.CustomTable<R>
-
- All Implemented Interfaces:
Serializable,Named,QueryPart,QueryPartInternal,Table<R>,TableLike<R>
public abstract class CustomTable<R extends TableRecord<R>> extends TableImpl<R>
A base class for customTableimplementations in client code.Client code may provide proper
Refer to this method's Javadoc for further details about its expected behaviour.Tableimplementations extending this useful base class. All necessary parts of theTableinterface are already implemented. Only this method needs further implementation:Use this base class when providing custom tables to any of the following methods:
- Author:
- Lukas Eder
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.jooq.impl.TableImpl
parameters
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedCustomTable(String name)Deprecated.- 3.10 - [#5996] - UseCustomTable(Name)instead.protectedCustomTable(String name, Schema schema)Deprecated.- 3.10 - [#5996] - UseCustomTable(Name, Schema)instead.protectedCustomTable(Name name)protectedCustomTable(Name name, Schema schema)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description Table<R>as(String alias)Create an alias for this table.Table<R>as(String alias, String... fieldAliases)Create an alias for this table and its fields.Table<R>as(String alias, BiFunction<? super Field<?>,? super Integer,? extends String> aliasFunction)Create an alias for this table and its fields.Table<R>as(String alias, Function<? super Field<?>,? extends String> aliasFunction)Create an alias for this table and its fields.Table<R>as(Name alias, BiFunction<? super Field<?>,? super Integer,? extends Name> aliasFunction)Create an alias for this table and its fields.Table<R>as(Name alias, Function<? super Field<?>,? extends Name> aliasFunction)Create an alias for this table and its fields.Table<R>as(Table<?> otherTable)Create an alias for this table based on another table's name.Table<R>as(Table<?> otherTable, BiFunction<? super Field<?>,? super Integer,? extends Field<?>> aliasFunction)Create an alias for this table and its fields.Table<R>as(Table<?> otherTable, Function<? super Field<?>,? extends Field<?>> aliasFunction)Create an alias for this table and its fields.Table<R>as(Table<?> otherTable, Field<?>... otherFields)Create an alias for this table based on another table's name.Table<R>asOfScn(Number scn)Create anSQLDialect.ORACLEflashback query clause from this table.Table<R>asOfScn(Field<? extends Number> scn)Create anSQLDialect.ORACLEflashback query clause from this table.Table<R>asOfTimestamp(Timestamp timestamp)Create anSQLDialect.ORACLEflashback query clause from this table.Table<R>asOfTimestamp(Field<Timestamp> timestamp)Create anSQLDialect.ORACLEflashback query clause from this table.Table<R>asTable()The underlying table representation of this object.Table<R>asTable(String alias)The underlying aliased table representation of this object.Table<R>asTable(String alias, String... fieldAliases)The underlying aliased table representation of this object.Table<R>asTable(String alias, BiFunction<? super Field<?>,? super Integer,? extends String> aliasFunction)The underlying aliased table representation of this object.Table<R>asTable(String alias, Function<? super Field<?>,? extends String> aliasFunction)The underlying aliased table representation of this object.QualifiedAsteriskasterisk()Create a qualified asterisk expression from this table (table.*) for use withSELECT.Table<R>at(String link)A table reference of this table at a givenLink.Table<R>at(Link link)A table reference of this table at a givenLink.Table<R>at(Name link)A table reference of this table at a givenLink.voidbind(BindContext context)Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)instead.protected DSLContextcreate()Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()andConfiguration.dsl()instead.protected DSLContextcreate(Configuration configuration)Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()andConfiguration.dsl()instead.protected DSLContextcreate(Context<?> ctx)Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()andConfiguration.dsl()instead.protected <T> TableField<R,T>createField(String name, DataType<T> type)Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType)instead.protected <T> TableField<R,T>createField(String name, DataType<T> type, String comment)Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String)instead.protected <T,U>
TableField<R,U>createField(String name, DataType<T> type, String comment, Binding<T,U> binding)Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String, Binding)instead.protected <T,U>
TableField<R,U>createField(String name, DataType<T> type, String comment, Converter<T,U> converter)Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String, Converter)instead.protected <T,X,U>
TableField<R,U>createField(String name, DataType<T> type, String comment, Converter<X,U> converter, Binding<T,X> binding)Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String, Converter, Binding)instead.protected static <R extends Record,T>
TableField<R,T>createField(String name, DataType<T> type, Table<R> table)Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table)instead.protected static <R extends Record,T>
TableField<R,T>createField(String name, DataType<T> type, Table<R> table, String comment)Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String)instead.protected static <R extends Record,T,U>
TableField<R,U>createField(String name, DataType<T> type, Table<R> table, String comment, Binding<T,U> binding)Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String, Binding)instead.protected static <R extends Record,T,U>
TableField<R,U>createField(String name, DataType<T> type, Table<R> table, String comment, Converter<T,U> converter)Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String, Converter)instead.protected static <R extends Record,T,X,U>
TableField<R,U>createField(String name, DataType<T> type, Table<R> table, String comment, Converter<X,U> converter, Binding<T,X> binding)Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String, Converter, Binding)instead.protected <T> TableField<R,T>createField(Name name, DataType<T> type)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected <T> TableField<R,T>createField(Name name, DataType<T> type, String comment)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected <T,U>
TableField<R,U>createField(Name name, DataType<T> type, String comment, Binding<T,U> binding)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected <T,U>
TableField<R,U>createField(Name name, DataType<T> type, String comment, Converter<T,U> converter)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected <T,X,U>
TableField<R,U>createField(Name name, DataType<T> type, String comment, Converter<X,U> converter, Binding<T,X> binding)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected static <R extends Record,T>
TableField<R,T>createField(Name name, DataType<T> type, Table<R> table)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected static <R extends Record,T>
TableField<R,T>createField(Name name, DataType<T> type, Table<R> table, String comment)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected static <R extends Record,T,U>
TableField<R,U>createField(Name name, DataType<T> type, Table<R> table, String comment, Binding<T,U> binding)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected static <R extends Record,T,U>
TableField<R,U>createField(Name name, DataType<T> type, Table<R> table, String comment, Converter<T,U> converter)Subclasses may call this method to createTableFieldobjects that are linked to this table.protected static <R extends Record,T,X,U>
TableField<R,U>createField(Name name, DataType<T> type, Table<R> table, String comment, Converter<X,U> converter, Binding<T,X> binding)Subclasses may call this method to createTableFieldobjects that are linked to this table.Table<Record>crossApply(String sql)CROSS APPLYa table to this table.Table<Record>crossApply(String sql, Object... bindings)CROSS APPLYa table to this table.Table<Record>crossApply(String sql, QueryPart... parts)CROSS APPLYa table to this table.Table<Record>crossApply(Name name)CROSS APPLYa table to this table.Table<Record>crossApply(SQL sql)CROSS APPLYa table to this table.Table<Record>crossApply(TableLike<?> table)CROSS APPLYa table to this table.Table<Record>crossJoin(String sql)CROSS JOINa table to this table.Table<Record>crossJoin(String sql, Object... bindings)CROSS JOINa table to this table.Table<Record>crossJoin(String sql, QueryPart... parts)CROSS JOINa table to this table.Table<Record>crossJoin(Name name)CROSS JOINa table to this table.Table<Record>crossJoin(SQL sql)CROSS JOINa table to this table.Table<Record>crossJoin(TableLike<?> table)CROSS JOINa table to this table.booleandeclaresCTE()Subclasses may override thisbooleandeclaresFields()Subclasses may override thisbooleandeclaresTables()Subclasses may override thisbooleandeclaresWindows()Subclasses may override thisDivideByOnStepdivideBy(Table<?> divisor)Create a newTABLEreference from this table, applying relational division.Conditioneq(Table<R> that)Create a predicate comparing records from self-joined tables.Conditionequal(Table<R> that)Create a predicate comparing records from self-joined tables.Field<?>field(int index)Get a specific field from this table, if this table knows its field references.<T> Field<T>field(int index, Class<T> type)Get a specific field from this table and coerce it totype, if this table knows its field references.<T> Field<T>field(int index, DataType<T> dataType)Get a specific field from this table and coerce it todataType, if this table knows its field references.Field<?>field(String string)Get a specific field from this table, if this table knows its field references.<T> Field<T>field(String name, Class<T> type)Get a specific field from this table and coerce it totype, if this table knows its field references.<T> Field<T>field(String name, DataType<T> dataType)Get a specific field from this table and coerce it todataType, if this table knows its field references.<T> Field<T>field(Field<T> field)Get a specific field from this table, if this table knows its field references.Field<?>field(Name name)Get a specific field from this table, if this table knows its field references.<T> Field<T>field(Name name, Class<T> type)Get a specific field from this table and coerce it totype, if this table knows its field references.<T> Field<T>field(Name name, DataType<T> dataType)Get a specific field from this table and coerce it todataType, if this table knows its field references.Field<?>[]fields()Get all fields from this table, if this table knows its field references, or an empty array otherwise.Field<?>[]fields(int... fieldIndexes)Get all fields from this table, providing some field indexes, if this table knows its field references.Field<?>[]fields(String... fieldNames)Get all fields from this table, providing some field names, if this table knows its field references.Field<?>[]fields(Field<?>... fields)Get all fields from this table, providing some fields, if this table knows its field references.Field<?>[]fields(Name... fieldNames)Get all fields from this table, providing some field names, if this table knows its field references.Stream<Field<?>>fieldStream()Get this table's fields as aStream, if this table knows its field references.Table<R>forceIndex(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>forceIndexForGroupBy(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>forceIndexForJoin(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>forceIndexForOrderBy(String... indexes)Specify a MySQL style table hint for query optimisation.Rfrom(Record record)The inverse operation ofRecord.into(Table).TableOnStep<Record>fullJoin(String sql)FULL OUTER JOINa table to this table.TableOnStep<Record>fullJoin(String sql, Object... bindings)FULL OUTER JOINa table to this table.TableOnStep<Record>fullJoin(String sql, QueryPart... parts)FULL OUTER JOINa table to this table.TableOnStep<Record>fullJoin(Name name)FULL OUTER JOINa table to this table.TableOnStep<Record>fullJoin(SQL sql)FULL OUTER JOINa table to this table.TableOnStep<Record>fullJoin(TableLike<?> table)FULL OUTER JOINa table to this table.TableOnStep<Record>fullOuterJoin(String sql)FULL OUTER JOINa table to this table.TableOnStep<Record>fullOuterJoin(String sql, Object... bindings)FULL OUTER JOINa table to this table.TableOnStep<Record>fullOuterJoin(String sql, QueryPart... parts)FULL OUTER JOINa table to this table.TableOnStep<Record>fullOuterJoin(Name name)FULL OUTER JOINa table to this table.TableOnStep<Record>fullOuterJoin(SQL sql)FULL OUTER JOINa table to this table.TableOnStep<Record>fullOuterJoin(TableLike<?> table)FULL OUTER JOINa table to this table.booleangeneratesCast()Subclasses may override thisCataloggetCatalog()Get the table catalog.StringgetComment()The comment on this object.DataType<R>getDataType()The table's record type as a UDT data type, in case the underlying database supports table records as UDT records.Identity<R,?>getIdentity()Retrieve the table'sIDENTITYinformation, if available.List<Index>getIndexes()Retrieve all of the table's indexes.List<UniqueKey<R>>getKeys()Retrieve all of the table's unique keys.StringgetName()The unqualified name of this object.UniqueKey<R>getPrimaryKey()Retrieve the table's primary keyNamegetQualifiedName()The qualified name of this object.TableField<R,?>getRecordTimestamp()A "timestamp" field holding record timestamp information used for optimistic lockingabstract Class<? extends R>getRecordType()Subclasses must implement this method Subclasses must override this method if they use the generic type parameterfor other types than RecordTableField<R,?>getRecordVersion()A "version" field holding record version information used for optimistic lockingList<ForeignKey<R,?>>getReferences()Get the list ofFOREIGN KEY's of this table<O extends Record>
List<ForeignKey<O,R>>getReferencesFrom(Table<O> other)Get a list ofFOREIGN KEY's of a specific table, referencing a this table.<O extends Record>
List<ForeignKey<R,O>>getReferencesTo(Table<O> other)Get a list ofFOREIGN KEY's of this table, referencing a specific table.SchemagetSchema()Get the table schema.NamegetUnqualifiedName()The unqualified name of this object.inthashCode()Generate a hash code from thisQueryPart.Table<R>ignoreIndex(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>ignoreIndexForGroupBy(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>ignoreIndexForJoin(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>ignoreIndexForOrderBy(String... indexes)Specify a MySQL style table hint for query optimisation.intindexOf(String fieldName)Get a field's index from this table.intindexOf(Field<?> field)Get a field's index from this table.intindexOf(Name fieldName)Get a field's index from this table.TableOnStep<Record>innerJoin(String sql)INNER JOINa table to this table.TableOnStep<Record>innerJoin(String sql, Object... bindings)INNER JOINa table to this table.TableOnStep<Record>innerJoin(String sql, QueryPart... parts)INNER JOINa table to this table.TableOnStep<Record>innerJoin(Name name)INNER JOINa table to this table.TableOnStep<Record>innerJoin(SQL sql)INNER JOINa table to this table.TableOnStep<Record>innerJoin(TableLike<?> table)INNER JOINa table to this table.TableOnStep<Record>join(String sql)INNER JOINa table to this table.TableOnStep<Record>join(String sql, Object... bindings)INNER JOINa table to this table.TableOnStep<Record>join(String sql, QueryPart... parts)INNER JOINa table to this table.TableOnStep<Record>join(Name name)INNER JOINa table to this table.TableOnStep<Record>join(SQL sql)INNER JOINa table to this table.TableOnStep<Record>join(TableLike<?> table)INNER JOINa table to this table.TableOptionalOnStep<Record>join(TableLike<?> table, JoinType type)Join a table to this table using aJoinTypeTableOnStep<R>leftAntiJoin(TableLike<?> table)A syntheticLEFT ANTI JOINclause that translates to an equivalentNOT EXISTSpredicate.TablePartitionByStep<Record>leftJoin(String sql)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftJoin(String sql, Object... bindings)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftJoin(String sql, QueryPart... parts)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftJoin(Name name)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftJoin(SQL sql)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftJoin(TableLike<?> table)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftOuterJoin(String sql)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftOuterJoin(String sql, Object... bindings)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftOuterJoin(String sql, QueryPart... parts)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftOuterJoin(Name name)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftOuterJoin(SQL sql)LEFT OUTER JOINa table to this table.TablePartitionByStep<Record>leftOuterJoin(TableLike<?> table)LEFT OUTER JOINa table to this table.TableOnStep<R>leftSemiJoin(TableLike<?> table)A syntheticLEFT SEMI JOINclause that translates to an equivalentEXISTSpredicate.Table<Record>naturalFullOuterJoin(String sql)NATURAL FULL OUTER JOINa table to this table.Table<Record>naturalFullOuterJoin(String sql, Object... bindings)NATURAL FULL OUTER JOINa table to this table.Table<Record>naturalFullOuterJoin(String sql, QueryPart... parts)NATURAL FULL OUTER JOINa table to this table.Table<Record>naturalFullOuterJoin(Name name)NATURAL FULL OUTER JOINa table to this table.Table<Record>naturalFullOuterJoin(SQL sql)NATURAL FULL OUTER JOINa table to this table.Table<Record>naturalFullOuterJoin(TableLike<?> table)NATURAL FULL OUTER JOINa table to this table.Table<Record>naturalJoin(String sql)NATURAL JOINa table to this table.Table<Record>naturalJoin(String sql, Object... bindings)NATURAL JOINa table to this table.Table<Record>naturalJoin(String sql, QueryPart... parts)NATURAL JOINa table to this table.Table<Record>naturalJoin(Name name)NATURAL JOINa table to this table.Table<Record>naturalJoin(SQL sql)NATURAL JOINa table to this table.Table<Record>naturalJoin(TableLike<?> table)NATURAL JOINa table to this table.Table<Record>naturalLeftOuterJoin(String sql)NATURAL LEFT OUTER JOINa table to this table.Table<Record>naturalLeftOuterJoin(String sql, Object... bindings)NATURAL LEFT OUTER JOINa table to this table.Table<Record>naturalLeftOuterJoin(String sql, QueryPart... parts)NATURAL LEFT OUTER JOINa table to this table.Table<Record>naturalLeftOuterJoin(Name name)NATURAL LEFT OUTER JOINa table to this table.Table<Record>naturalLeftOuterJoin(SQL sql)NATURAL LEFT OUTER JOINa table to this table.Table<Record>naturalLeftOuterJoin(TableLike<?> table)NATURAL LEFT OUTER JOINa table to this table.Table<Record>naturalRightOuterJoin(String sql)NATURAL RIGHT OUTER JOINa table to this table.Table<Record>naturalRightOuterJoin(String sql, Object... bindings)NATURAL RIGHT OUTER JOINa table to this table.Table<Record>naturalRightOuterJoin(String sql, QueryPart... parts)NATURAL RIGHT OUTER JOINa table to this table.Table<Record>naturalRightOuterJoin(Name name)NATURAL RIGHT OUTER JOINa table to this table.Table<Record>naturalRightOuterJoin(SQL sql)NATURAL RIGHT OUTER JOINa table to this table.Table<Record>naturalRightOuterJoin(TableLike<?> table)NATURAL RIGHT OUTER JOINa table to this table.Conditionne(Table<R> that)Create a predicate comparing records from self-non-equi-joined tables.RnewRecord()Create a newRecordof this table's type.ConditionnotEqual(Table<R> that)Create a predicate comparing records from self-non-equi-joined tables.Table<Record>outerApply(String sql)OUTER APPLYa table to this table.Table<Record>outerApply(String sql, Object... bindings)OUTER APPLYa table to this table.Table<Record>outerApply(String sql, QueryPart... parts)OUTER APPLYa table to this table.Table<Record>outerApply(Name name)OUTER APPLYa table to this table.Table<Record>outerApply(SQL sql)OUTER APPLYa table to this table.Table<Record>outerApply(TableLike<?> table)OUTER APPLYa table to this table.TableOuterJoinStep<Record>partitionBy(Collection<? extends Field<?>> fields)Add aPARTITION BYclause to the left hand side of theOUTER JOINkeywordsTableOuterJoinStep<Record>partitionBy(Field<?>... fields)Add aPARTITION BYclause to the left hand side of theOUTER JOINkeywordsPivotForSteppivot(Collection<? extends Field<?>> aggregateFunctions)Create a newTABLEreference from this table, pivoting it into another form.PivotForSteppivot(Field<?>... aggregateFunctions)Create a newTABLEreference from this table, pivoting it into another form.RecordType<R>recordType()The record type produced by this table.TablePartitionByStep<Record>rightJoin(String sql)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightJoin(String sql, Object... bindings)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightJoin(String sql, QueryPart... parts)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightJoin(Name name)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightJoin(SQL sql)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightJoin(TableLike<?> table)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightOuterJoin(String sql)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightOuterJoin(String sql, Object... bindings)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightOuterJoin(String sql, QueryPart... parts)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightOuterJoin(Name name)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightOuterJoin(SQL sql)RIGHT OUTER JOINa table to this table.TablePartitionByStep<Record>rightOuterJoin(TableLike<?> table)RIGHT OUTER JOINa table to this table.Field<RowId>rowid()Get atable.rowidreference from this table.TableOptionalOnStep<Record>straightJoin(String sql)STRAIGHT_JOINa table to this table.TableOptionalOnStep<Record>straightJoin(String sql, Object... bindings)STRAIGHT_JOINa table to this table.TableOptionalOnStep<Record>straightJoin(String sql, QueryPart... parts)STRAIGHT_JOINa table to this table.TableOptionalOnStep<Record>straightJoin(Name name)STRAIGHT_JOINa table to this table.TableOptionalOnStep<Record>straightJoin(SQL sql)STRAIGHT_JOINa table to this table.TableOptionalOnStep<Record>straightJoin(TableLike<?> table)STRAIGHT_JOINa table to this table.voidtoSQL(RenderContext context)Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)instead.StringtoString()Render a SQL string representation of thisQueryPart.protected DataAccessExceptiontranslate(String sql, SQLException e)Internal convenience methodTable<R>useIndex(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>useIndexForGroupBy(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>useIndexForJoin(String... indexes)Specify a MySQL style table hint for query optimisation.Table<R>useIndexForOrderBy(String... indexes)Specify a MySQL style table hint for query optimisation.VersionsBetweenAndStep<R,Number>versionsBetweenScn(Number scn)Create anSQLDialect.ORACLEflashback versions query clause from this table.VersionsBetweenAndStep<R,Number>versionsBetweenScn(Field<? extends Number> scn)Create anSQLDialect.ORACLEflashback versions query clause from this table.VersionsBetweenAndStep<R,Number>versionsBetweenScnMinvalue()Create anSQLDialect.ORACLEflashback versions query clause from this table.VersionsBetweenAndStep<R,Timestamp>versionsBetweenTimestamp(Timestamp timestamp)Create anSQLDialect.ORACLEflashback versions query clause from this table.VersionsBetweenAndStep<R,Timestamp>versionsBetweenTimestamp(Field<Timestamp> timestamp)Create anSQLDialect.ORACLEflashback versions query clause from this table.VersionsBetweenAndStep<R,Timestamp>versionsBetweenTimestampMinvalue()Create anSQLDialect.ORACLEflashback versions query clause from this table.Table<R>where(String sql)Add aWHEREclause to the table.Table<R>where(String sql, Object... bindings)Add aWHEREclause to the table.Table<R>where(String sql, QueryPart... parts)Add aWHEREclause to the table.Table<R>where(Collection<? extends Condition> conditions)Add aWHEREclause to the table, connecting them with each other withOperator.AND.Table<R>where(Condition condition)Add aWHEREclause to the table, connecting them with each other withOperator.AND.Table<R>where(Condition... conditions)Add aWHEREclause to the table, connecting them with each other withOperator.AND.Table<R>where(Field<Boolean> field)Add aWHEREclause to the table.Table<R>where(SQL sql)Add aWHEREclause to the table.Table<R>whereExists(Select<?> select)Add aWHERE EXISTSclause to the table.Table<R>whereNotExists(Select<?> select)Add aWHERE NOT EXISTSclause to the table.Table<R>with(String hint)Specify a SQL Server style table hint for query optimisation.-
Methods inherited from class org.jooq.impl.TableImpl
accept, as, as, clauses, equals, fieldsRow, rename, rename
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jooq.Named
getName, getQualifiedName, getUnqualifiedName
-
Methods inherited from interface org.jooq.Table
getComment
-
-
-
-
Constructor Detail
-
CustomTable
protected CustomTable(Name name)
-
CustomTable
@Deprecated protected CustomTable(String name)
Deprecated.- 3.10 - [#5996] - UseCustomTable(Name)instead.
-
CustomTable
@Deprecated protected CustomTable(String name, Schema schema)
Deprecated.- 3.10 - [#5996] - UseCustomTable(Name, Schema)instead.
-
-
Method Detail
-
getRecordType
public abstract Class<? extends R> getRecordType()
Subclasses must implement this method
Subclasses must override this method if they use the generic type parameterfor other types than RecordThe record type produced by this table.
- Specified by:
getRecordTypein interfaceTable<R extends TableRecord<R>>- Overrides:
getRecordTypein classTableImpl<R extends TableRecord<R>>
-
getIdentity
public Identity<R,?> getIdentity()
Retrieve the table'sIDENTITYinformation, if available.With SQL:2003, the concept of
IDENTITYcolumns was introduced in most RDBMS. These are special kinds of columns that have auto-increment functionality whenINSERTstatements are performed.An
IDENTITYcolumn is usually part of thePRIMARY KEYor of aUNIQUE KEYin the table, although in some RDBMS, this is not required. There can only be at most oneIDENTITYcolumn.Note: Unfortunately, this is not supported in the Oracle dialect, where identities emulated by triggers cannot be formally detected.
Subclasses should override this method
- Specified by:
getIdentityin interfaceTable<R extends TableRecord<R>>- Returns:
- The table's
IDENTITYinformation, ornull, if no such information is available.
-
getPrimaryKey
public UniqueKey<R> getPrimaryKey()
Retrieve the table's primary keySubclasses may override this method
- Specified by:
getPrimaryKeyin interfaceTable<R extends TableRecord<R>>- Returns:
- The primary key. This is never
nullfor an updatable table.
-
getKeys
public List<UniqueKey<R>> getKeys()
Retrieve all of the table's unique keys.Subclasses should override this method
- Specified by:
getKeysin interfaceTable<R extends TableRecord<R>>- Returns:
- All keys. This is never
null. This is never empty for aTablewith aTable.getPrimaryKey(). This method returns an unmodifiable list.
-
getReferences
public List<ForeignKey<R,?>> getReferences()
Get the list ofFOREIGN KEY's of this tableSubclasses should override this method
- Specified by:
getReferencesin interfaceTable<R extends TableRecord<R>>- Returns:
- This table's
FOREIGN KEY's. This is nevernull.
-
declaresFields
public final boolean declaresFields()
Subclasses may override this- Specified by:
declaresFieldsin interfaceQueryPartInternal
-
declaresTables
public final boolean declaresTables()
Subclasses may override this- Specified by:
declaresTablesin interfaceQueryPartInternal- Overrides:
declaresTablesin classTableImpl<R extends TableRecord<R>>
-
from
public final R from(Record record)
Description copied from interface:TableThe inverse operation ofRecord.into(Table).This method can be used in its method reference form conveniently on a generated table, for instance, when mapping records in a stream:
DSL.using(configuration) .fetch("select * from t") .stream() .map(MY_TABLE::into) .forEach(System.out::println);
-
asterisk
public final QualifiedAsterisk asterisk()
Description copied from interface:TableCreate a qualified asterisk expression from this table (table.*) for use withSELECT.- Specified by:
asteriskin interfaceTable<R extends Record>- See Also:
DSL.asterisk()
-
rowid
public final Field<RowId> rowid()
Description copied from interface:TableGet atable.rowidreference from this table.A rowid value describes the physical location of a row on the disk, which can be used as a replacement for a primary key in some situations - especially within a query, e.g. to self-join a table:
-- Emulating this MySQL statement... DELETE FROM x ORDER BY x.y LIMIT 1 -- ... in other databases DELETE FROM x WHERE x.rowid IN ( SELECT x.rowid FROM x ORDER BY x.a LIMIT 1 )
It is not recommended to use
rowidvalues in client applications as actual row identifiers as the database system may move a row to a different physical location at any time, thus changing the rowid value. In general, use primary keys, instead.
-
getDataType
public final DataType<R> getDataType()
Description copied from interface:TableThe table's record type as a UDT data type, in case the underlying database supports table records as UDT records.- Specified by:
getDataTypein interfaceTable<R extends Record>
-
recordType
public final RecordType<R> recordType()
Description copied from interface:TableThe record type produced by this table.- Specified by:
recordTypein interfaceTable<R extends Record>
-
newRecord
public final R newRecord()
Description copied from interface:TableCreate a newRecordof this table's type.- Specified by:
newRecordin interfaceTable<R extends Record>- See Also:
DSLContext.newRecord(Table)
-
fieldStream
public final Stream<Field<?>> fieldStream()
Description copied from interface:TableLikeGet this table's fields as aStream, if this table knows its field references.- Specified by:
fieldStreamin interfaceTableLike<R extends Record>
-
field
public final <T> Field<T> field(Field<T> field)
Description copied from interface:TableLikeGet a specific field from this table, if this table knows its field references.This will return:
- A field that is the same as the argument field (by identity comparison).
- A field that is equal to the argument field (exact matching fully qualified name).
- A field that is equal to the argument field (partially matching qualified name).
- A field whose name is equal to the name of the argument field.
nullotherwise.
- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(Field)
-
field
public final Field<?> field(String string)
Description copied from interface:TableLikeGet a specific field from this table, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(String)
-
field
public final <T> Field<T> field(String name, Class<T> type)
Description copied from interface:TableLikeGet a specific field from this table and coerce it totype, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(String, Class)
-
field
public final <T> Field<T> field(String name, DataType<T> dataType)
Description copied from interface:TableLikeGet a specific field from this table and coerce it todataType, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(String, DataType)
-
field
public final Field<?> field(Name name)
Description copied from interface:TableLikeGet a specific field from this table, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(Name)
-
field
public final <T> Field<T> field(Name name, Class<T> type)
Description copied from interface:TableLikeGet a specific field from this table and coerce it totype, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(Name, Class)
-
field
public final <T> Field<T> field(Name name, DataType<T> dataType)
Description copied from interface:TableLikeGet a specific field from this table and coerce it todataType, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(Name, DataType)
-
field
public final Field<?> field(int index)
Description copied from interface:TableLikeGet a specific field from this table, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(int)
-
field
public final <T> Field<T> field(int index, Class<T> type)
Description copied from interface:TableLikeGet a specific field from this table and coerce it totype, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(int, Class)
-
field
public final <T> Field<T> field(int index, DataType<T> dataType)
Description copied from interface:TableLikeGet a specific field from this table and coerce it todataType, if this table knows its field references.- Specified by:
fieldin interfaceTableLike<R extends Record>- See Also:
Row.field(int, DataType)
-
fields
public final Field<?>[] fields()
Description copied from interface:TableLikeGet all fields from this table, if this table knows its field references, or an empty array otherwise.- Specified by:
fieldsin interfaceTableLike<R extends Record>- See Also:
Row.fields()
-
fields
public final Field<?>[] fields(Field<?>... fields)
Description copied from interface:TableLikeGet all fields from this table, providing some fields, if this table knows its field references.- Specified by:
fieldsin interfaceTableLike<R extends Record>- Returns:
- All available fields
- See Also:
Row.fields(Field...)
-
fields
public final Field<?>[] fields(String... fieldNames)
Description copied from interface:TableLikeGet all fields from this table, providing some field names, if this table knows its field references.- Specified by:
fieldsin interfaceTableLike<R extends Record>- Returns:
- All available fields
- See Also:
Row.fields(String...)
-
fields
public final Field<?>[] fields(Name... fieldNames)
Description copied from interface:TableLikeGet all fields from this table, providing some field names, if this table knows its field references.- Specified by:
fieldsin interfaceTableLike<R extends Record>- Returns:
- All available fields
- See Also:
Row.fields(Name...)
-
fields
public final Field<?>[] fields(int... fieldIndexes)
Description copied from interface:TableLikeGet all fields from this table, providing some field indexes, if this table knows its field references.- Specified by:
fieldsin interfaceTableLike<R extends Record>- Returns:
- All available fields
- See Also:
Row.fields(int...)
-
indexOf
public final int indexOf(Field<?> field)
Description copied from interface:TableLikeGet a field's index from this table.
-
indexOf
public final int indexOf(String fieldName)
Description copied from interface:TableLikeGet a field's index from this table.
-
indexOf
public final int indexOf(Name fieldName)
Description copied from interface:TableLikeGet a field's index from this table.
-
asTable
public final Table<R> asTable()
Description copied from interface:TableLikeThe underlying table representation of this object.This method is useful for things like
SELECT * FROM (SELECT * FROM x WHERE x.a = '1') WHERE ...
-
asTable
public final Table<R> asTable(String alias)
Description copied from interface:TableLikeThe underlying aliased table representation of this object.- Specified by:
asTablein interfaceTableLike<R extends Record>- See Also:
Table.as(String)
-
asTable
public final Table<R> asTable(String alias, String... fieldAliases)
Description copied from interface:TableLikeThe underlying aliased table representation of this object.- Specified by:
asTablein interfaceTableLike<R extends Record>- See Also:
Table.as(String, String...)
-
asTable
public final Table<R> asTable(String alias, Function<? super Field<?>,? extends String> aliasFunction)
Description copied from interface:TableLikeThe underlying aliased table representation of this object.- Specified by:
asTablein interfaceTableLike<R extends Record>- See Also:
Table.as(String, Function)
-
asTable
public final Table<R> asTable(String alias, BiFunction<? super Field<?>,? super Integer,? extends String> aliasFunction)
Description copied from interface:TableLikeThe underlying aliased table representation of this object.- Specified by:
asTablein interfaceTableLike<R extends Record>- See Also:
Table.as(String, BiFunction)
-
as
public Table<R> as(String alias)
Description copied from interface:TableCreate an alias for this table.Note that the case-sensitivity of the returned table depends on
Settings.getRenderQuotedNames(). By default, table aliases are quoted, and thus case-sensitive in many SQL dialects!
-
as
public Table<R> as(String alias, String... fieldAliases)
Description copied from interface:TableCreate an alias for this table and its fields.Note that the case-sensitivity of the returned table and columns depends on
Settings.getRenderQuotedNames(). By default, table aliases are quoted, and thus case-sensitive in many SQL dialects!Derived column lists for table references
Note, not all databases support derived column lists for their table aliases. On the other hand, some databases do support derived column lists, but only for derived tables. jOOQ will try to turn table references into derived tables to make this syntax work. In other words, the following statements are equivalent:
-- Using derived column lists to rename columns (e.g. Postgres) SELECT t.a, t.b FROM my_table t(a, b) -- Nesting table references within derived tables (e.g. SQL Server) SELECT t.a, t.b FROM ( SELECT * FROM my_table ) t(a, b)
Derived column lists for derived tables
Other databases may not support derived column lists at all, but they do support common table expressions. The following statements are equivalent:
-- Using derived column lists to rename columns (e.g. Postgres) SELECT t.a, t.b FROM ( SELECT 1, 2 ) AS t(a, b) -- Using UNION ALL to produce column names (e.g. MySQL) SELECT t.a, t.b FROM ( SELECT null a, null b FROM DUAL WHERE 1 = 0 UNION ALL SELECT 1, 2 FROM DUAL ) t
-
as
public final Table<R> as(String alias, Function<? super Field<?>,? extends String> aliasFunction)
Description copied from interface:TableCreate an alias for this table and its fields.This works like
Table.as(String, String...), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix:MY_TABLE.as("t1", f ->"prefix_" + f.getName());
-
as
public final Table<R> as(String alias, BiFunction<? super Field<?>,? super Integer,? extends String> aliasFunction)
Description copied from interface:TableCreate an alias for this table and its fields.This works like
Table.as(String, String...), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix:MY_TABLE.as("t1", (f, i) ->"column" + i);
-
as
public final Table<R> as(Name alias, Function<? super Field<?>,? extends Name> aliasFunction)
Description copied from interface:TableCreate an alias for this table and its fields.This works like
Table.as(Name, Name...), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix:MY_TABLE.as("t1", f ->"prefix_" + f.getName());
-
as
public final Table<R> as(Name alias, BiFunction<? super Field<?>,? super Integer,? extends Name> aliasFunction)
Description copied from interface:TableCreate an alias for this table and its fields.This works like
Table.as(Name, Name...), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix:MY_TABLE.as("t1", (f, i) ->"column" + i);
-
getCatalog
public final Catalog getCatalog()
Description copied from interface:TableGet the table catalog.- Specified by:
getCatalogin interfaceTable<R extends Record>
-
getRecordVersion
public TableField<R,?> getRecordVersion()
A "version" field holding record version information used for optimistic lockingjOOQ supports optimistic locking in
UpdatableRecord.store()andUpdatableRecord.delete()ifSettings.isExecuteWithOptimisticLocking()is enabled. Optimistic locking is performed in a singleUPDATEorDELETEstatement if tables provide a "version" or "timestamp" field, or in two steps using an additionalSELECT .. FOR UPDATEstatement otherwise.This method is overridden in generated subclasses if their corresponding tables have been configured accordingly. A table may have both a "version" and a "timestamp" field.
Subclasses may override this method
- Specified by:
getRecordVersionin interfaceTable<R extends Record>- Returns:
- The "version" field, or
null, if this table has no "version" field. - See Also:
Table.getRecordTimestamp(),UpdatableRecord.store(),UpdatableRecord.delete(),Settings.isExecuteWithOptimisticLocking()
-
getRecordTimestamp
public TableField<R,?> getRecordTimestamp()
A "timestamp" field holding record timestamp information used for optimistic lockingjOOQ supports optimistic locking in
UpdatableRecord.store()andUpdatableRecord.delete()ifSettings.isExecuteWithOptimisticLocking()is enabled. Optimistic locking is performed in a singleUPDATEorDELETEstatement if tables provide a "version" or "timestamp" field, or in two steps using an additionalSELECT .. FOR UPDATEstatement otherwise.This method is overridden in generated subclasses if their corresponding tables have been configured accordingly. A table may have both a "version" and a "timestamp" field.
Subclasses may override this method
- Specified by:
getRecordTimestampin interfaceTable<R extends Record>- Returns:
- The "timestamp" field, or
null, if this table has no "timestamp" field. - See Also:
Table.getRecordVersion(),UpdatableRecord.store(),UpdatableRecord.delete(),Settings.isExecuteWithOptimisticLocking()
-
getIndexes
public List<Index> getIndexes()
Retrieve all of the table's indexes.Subclasses should override this method
- Specified by:
getIndexesin interfaceTable<R extends Record>- Returns:
- All indexes. This is never
null. This method returns an unmodifiable list.
-
getReferencesFrom
public final <O extends Record> List<ForeignKey<O,R>> getReferencesFrom(Table<O> other)
Description copied from interface:TableGet a list ofFOREIGN KEY's of a specific table, referencing a this table.- Specified by:
getReferencesFromin interfaceTable<R extends Record>- Type Parameters:
O- The other table's record type- Parameters:
other- The other table of the foreign key relationship- Returns:
- Some other table's
FOREIGN KEY's towards an this table. This is nevernull. This method returns an unmodifiable list.
-
getReferencesTo
public final <O extends Record> List<ForeignKey<R,O>> getReferencesTo(Table<O> other)
Description copied from interface:TableGet a list ofFOREIGN KEY's of this table, referencing a specific table.- Specified by:
getReferencesToin interfaceTable<R extends Record>- Type Parameters:
O- The other table's record type- Parameters:
other- The other table of the foreign key relationship- Returns:
- This table's
FOREIGN KEY's towards an other table. This is nevernull.
-
createField
@Deprecated protected static final <R extends Record,T> TableField<R,T> createField(String name, DataType<T> type, Table<R> table)
Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected static final <R extends Record,T> TableField<R,T> createField(String name, DataType<T> type, Table<R> table, String comment)
Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected static final <R extends Record,T,U> TableField<R,U> createField(String name, DataType<T> type, Table<R> table, String comment, Converter<T,U> converter)
Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String, Converter)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected static final <R extends Record,T,U> TableField<R,U> createField(String name, DataType<T> type, Table<R> table, String comment, Binding<T,U> binding)
Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String, Binding)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected static final <R extends Record,T,X,U> TableField<R,U> createField(String name, DataType<T> type, Table<R> table, String comment, Converter<X,U> converter, Binding<T,X> binding)
Deprecated.- 3.12.0 - [#8000] - UseAbstractTable.createField(Name, DataType, Table, String, Converter, Binding)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected final <T> TableField<R,T> createField(String name, DataType<T> type)
Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected final <T> TableField<R,T> createField(String name, DataType<T> type, String comment)
Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected final <T,U> TableField<R,U> createField(String name, DataType<T> type, String comment, Converter<T,U> converter)
Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String, Converter)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected final <T,U> TableField<R,U> createField(String name, DataType<T> type, String comment, Binding<T,U> binding)
Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String, Binding)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
@Deprecated protected final <T,X,U> TableField<R,U> createField(String name, DataType<T> type, String comment, Converter<X,U> converter, Binding<T,X> binding)
Deprecated.- 3.12.0 - [#8000] - UsecreateField(Name, DataType, String, Converter, Binding)instead.Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected static final <R extends Record,T> TableField<R,T> createField(Name name, DataType<T> type, Table<R> table)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected static final <R extends Record,T> TableField<R,T> createField(Name name, DataType<T> type, Table<R> table, String comment)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected static final <R extends Record,T,U> TableField<R,U> createField(Name name, DataType<T> type, Table<R> table, String comment, Converter<T,U> converter)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected static final <R extends Record,T,U> TableField<R,U> createField(Name name, DataType<T> type, Table<R> table, String comment, Binding<T,U> binding)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected static final <R extends Record,T,X,U> TableField<R,U> createField(Name name, DataType<T> type, Table<R> table, String comment, Converter<X,U> converter, Binding<T,X> binding)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected final <T> TableField<R,T> createField(Name name, DataType<T> type)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected final <T> TableField<R,T> createField(Name name, DataType<T> type, String comment)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected final <T,U> TableField<R,U> createField(Name name, DataType<T> type, String comment, Converter<T,U> converter)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected final <T,U> TableField<R,U> createField(Name name, DataType<T> type, String comment, Binding<T,U> binding)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
createField
protected final <T,X,U> TableField<R,U> createField(Name name, DataType<T> type, String comment, Converter<X,U> converter, Binding<T,X> binding)
Subclasses may call this method to createTableFieldobjects that are linked to this table.- Parameters:
name- The name of the field (case-sensitive!)type- The data type of the field
-
eq
public final Condition eq(Table<R> that)
Description copied from interface:TableCreate a predicate comparing records from self-joined tables.This is a convenience method for self-joins, comparing complete records between tables.
For example:
MyTable a = MY_TABLE.as("a"); MyTable b = MY_TABLE.as("b"); DSL.using(configuration) .select() .from(a) .join(b).on(a.eq(b));- Specified by:
eqin interfaceTable<R extends Record>- See Also:
Table.equal(Table)
-
equal
public final Condition equal(Table<R> that)
Description copied from interface:TableCreate a predicate comparing records from self-joined tables.This is a convenience method for self-joins, comparing complete records between tables.
For example:
MyTable a = MY_TABLE.as("a"); MyTable b = MY_TABLE.as("b"); DSL.using(configuration) .select() .from(a) .join(b).on(a.equal(b));
-
ne
public final Condition ne(Table<R> that)
Description copied from interface:TableCreate a predicate comparing records from self-non-equi-joined tables. This is a convenience method for self-joins, comparing complete records between tables.For example:
MyTable a = MY_TABLE.as("a"); MyTable b = MY_TABLE.as("b"); DSL.using(configuration) .select() .from(a) .join(b).on(a.ne(b));- Specified by:
nein interfaceTable<R extends Record>- See Also:
Table.notEqual(Table)
-
notEqual
public final Condition notEqual(Table<R> that)
Description copied from interface:TableCreate a predicate comparing records from self-non-equi-joined tables.This is a convenience method for self-joins, comparing complete records between tables.
For example:
MyTable a = MY_TABLE.as("a"); MyTable b = MY_TABLE.as("b"); DSL.using(configuration) .select() .from(a) .join(b).on(a.notEqual(b));
-
useIndex
public final Table<R> useIndex(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndex("MY_INDEX") .fetch();- Specified by:
useIndexin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
useIndexForJoin
public final Table<R> useIndexForJoin(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForJoin("MY_INDEX") .fetch();- Specified by:
useIndexForJoinin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
useIndexForOrderBy
public final Table<R> useIndexForOrderBy(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForOrderBy("MY_INDEX") .fetch();- Specified by:
useIndexForOrderByin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
useIndexForGroupBy
public final Table<R> useIndexForGroupBy(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForGroupBy("MY_INDEX") .fetch();- Specified by:
useIndexForGroupByin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
ignoreIndex
public final Table<R> ignoreIndex(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndex("MY_INDEX") .fetch();- Specified by:
ignoreIndexin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
ignoreIndexForJoin
public final Table<R> ignoreIndexForJoin(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForJoin("MY_INDEX") .fetch();- Specified by:
ignoreIndexForJoinin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
ignoreIndexForOrderBy
public final Table<R> ignoreIndexForOrderBy(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForOrderBy("MY_INDEX") .fetch();- Specified by:
ignoreIndexForOrderByin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
ignoreIndexForGroupBy
public final Table<R> ignoreIndexForGroupBy(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForGroupBy("MY_INDEX") .fetch();- Specified by:
ignoreIndexForGroupByin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
forceIndex
public final Table<R> forceIndex(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndex("MY_INDEX") .fetch();- Specified by:
forceIndexin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
forceIndexForJoin
public final Table<R> forceIndexForJoin(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForJoin("MY_INDEX") .fetch();- Specified by:
forceIndexForJoinin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
forceIndexForOrderBy
public final Table<R> forceIndexForOrderBy(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForOrderBy("MY_INDEX") .fetch();- Specified by:
forceIndexForOrderByin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
forceIndexForGroupBy
public final Table<R> forceIndexForGroupBy(String... indexes)
Description copied from interface:TableSpecify a MySQL style table hint for query optimisation.Example:
create.select() .from(BOOK.as("b").useIndexForGroupBy("MY_INDEX") .fetch();- Specified by:
forceIndexForGroupByin interfaceTable<R extends Record>- See Also:
- http://dev.mysql.com/doc/refman/5.7/en/index-hints.html
-
as
public final Table<R> as(Table<?> otherTable)
Description copied from interface:TableCreate an alias for this table based on another table's name.
-
as
public final Table<R> as(Table<?> otherTable, Field<?>... otherFields)
Description copied from interface:TableCreate an alias for this table based on another table's name.
-
as
public final Table<R> as(Table<?> otherTable, Function<? super Field<?>,? extends Field<?>> aliasFunction)
Description copied from interface:TableCreate an alias for this table and its fields.This works like
Table.as(Table, Field...), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix:MY_TABLE.as(MY_OTHER_TABLE, f ->MY_OTHER_TABLE.field(f));
-
as
public final Table<R> as(Table<?> otherTable, BiFunction<? super Field<?>,? super Integer,? extends Field<?>> aliasFunction)
Description copied from interface:TableCreate an alias for this table and its fields.This works like
Table.as(Table, Field...), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix:MY_TABLE.as("t1", (f, i) ->"column" + i);
-
with
@Pro public final Table<R> with(String hint)
Description copied from interface:TableSpecify a SQL Server style table hint for query optimisation.This makes sense only on an actual database table or view, not on other composed table sources.
Example:
create.select() .from(BOOK.as("b").with("READUNCOMMITTED") .fetch();For
SQLDialect.ORACLEstyle hints, seeSelectFromStep.hint(String)andSelectQuery.addHint(String)- Specified by:
within interfaceTable<R extends Record>- See Also:
- http://msdn.microsoft.com/en-us/library/ms187373.aspx,
SelectFromStep.hint(String),SelectQuery.addHint(String)
-
at
@Pro public final Table<R> at(String link)
Description copied from interface:TableA table reference of this table at a givenLink.- Specified by:
atin interfaceTable<R extends Record>- See Also:
DSL.link(String)
-
at
@Pro public final Table<R> at(Name link)
Description copied from interface:TableA table reference of this table at a givenLink.- Specified by:
atin interfaceTable<R extends Record>- See Also:
DSL.link(Name)
-
at
@Pro public final Table<R> at(Link link)
Description copied from interface:TableA table reference of this table at a givenLink.
-
pivot
@Pro public final PivotForStep pivot(Field<?>... aggregateFunctions)
Description copied from interface:TableCreate a newTABLEreference from this table, pivoting it into another form.This has been observed to work with
-
SQLDialect.ORACLE11Gupwards -
SQLDialect.SQLSERVER(not yet officially supported) - Other dialects by using some means of emulation (not yet officially supported)
-
-
pivot
@Pro public final PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions)
Description copied from interface:TableCreate a newTABLEreference from this table, pivoting it into another form.For more details, see
Table.pivot(Field...)- Specified by:
pivotin interfaceTable<R extends Record>- Parameters:
aggregateFunctions- The aggregate functions used for pivoting.- Returns:
- A DSL object to create the
PIVOTexpression - See Also:
Table.pivot(Field...)
-
versionsBetweenScn
@Pro public final VersionsBetweenAndStep<R,Number> versionsBetweenScn(Number scn)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback versions query clause from this table.- Specified by:
versionsBetweenScnin interfaceTable<R extends Record>
-
versionsBetweenScn
@Pro public final VersionsBetweenAndStep<R,Number> versionsBetweenScn(Field<? extends Number> scn)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback versions query clause from this table.- Specified by:
versionsBetweenScnin interfaceTable<R extends Record>
-
versionsBetweenScnMinvalue
@Pro public final VersionsBetweenAndStep<R,Number> versionsBetweenScnMinvalue()
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback versions query clause from this table.- Specified by:
versionsBetweenScnMinvaluein interfaceTable<R extends Record>
-
versionsBetweenTimestamp
@Pro public final VersionsBetweenAndStep<R,Timestamp> versionsBetweenTimestamp(Timestamp timestamp)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback versions query clause from this table.- Specified by:
versionsBetweenTimestampin interfaceTable<R extends Record>
-
versionsBetweenTimestamp
@Pro public final VersionsBetweenAndStep<R,Timestamp> versionsBetweenTimestamp(Field<Timestamp> timestamp)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback versions query clause from this table.- Specified by:
versionsBetweenTimestampin interfaceTable<R extends Record>
-
versionsBetweenTimestampMinvalue
@Pro public final VersionsBetweenAndStep<R,Timestamp> versionsBetweenTimestampMinvalue()
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback versions query clause from this table.- Specified by:
versionsBetweenTimestampMinvaluein interfaceTable<R extends Record>
-
asOfScn
@Pro public final Table<R> asOfScn(Number scn)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback query clause from this table.
-
asOfScn
@Pro public final Table<R> asOfScn(Field<? extends Number> scn)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback query clause from this table.
-
asOfTimestamp
@Pro public final Table<R> asOfTimestamp(Timestamp timestamp)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback query clause from this table.- Specified by:
asOfTimestampin interfaceTable<R extends Record>
-
asOfTimestamp
@Pro public final Table<R> asOfTimestamp(Field<Timestamp> timestamp)
Description copied from interface:TableCreate anSQLDialect.ORACLEflashback query clause from this table.- Specified by:
asOfTimestampin interfaceTable<R extends Record>
-
divideBy
public final DivideByOnStep divideBy(Table<?> divisor)
Description copied from interface:TableCreate a newTABLEreference from this table, applying relational division.Relational division is the inverse of a cross join operation. The following is an approximate definition of a relational division:
Assume the following cross join / cartesian product C = A × B Then it can be said that A = C ÷ B B = C ÷ A
With jOOQ, you can simplify using relational divisions by using the following syntax:
C.divideBy(B).on(C.ID.equal(B.C_ID)).returning(C.TEXT)
The above roughly translates to
SELECT DISTINCT C.TEXT FROM C "c1" WHERE NOT EXISTS ( SELECT 1 FROM B WHERE NOT EXISTS ( SELECT 1 FROM C "c2" WHERE "c2".TEXT = "c1".TEXT AND "c2".ID = B.C_ID ) )Or in plain text: Find those TEXT values in C whose ID's correspond to all ID's in B. Note that from the above SQL statement, it is immediately clear that proper indexing is of the essence. Be sure to have indexes on all columns referenced from the
on(...)andreturning(...)clauses.For more information about relational division and some nice, real-life examples, see
- http ://en.wikipedia.org/wiki/Relational_algebra#Division
- http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the- sql-of-relational-division/
This has been observed to work with all dialects
-
leftSemiJoin
public final TableOnStep<R> leftSemiJoin(TableLike<?> table)
Description copied from interface:TableA syntheticLEFT SEMI JOINclause that translates to an equivalentEXISTSpredicate.The following two SQL snippets are semantically equivalent:
-- Using LEFT SEMI JOIN FROM A LEFT SEMI JOIN B ON A.ID = B.ID -- Using WHERE EXISTS FROM A WHERE EXISTS ( SELECT 1 FROM B WHERE A.ID = B.ID )Notice that according to Relational algebra's understanding of left semi join, the right hand side of the left semi join operator is not projected, i.e. it cannot be accessed from
WHEREorSELECTor any other clause thanON.- Specified by:
leftSemiJoinin interfaceTable<R extends Record>
-
leftAntiJoin
public final TableOnStep<R> leftAntiJoin(TableLike<?> table)
Description copied from interface:TableA syntheticLEFT ANTI JOINclause that translates to an equivalentNOT EXISTSpredicate.The following two SQL snippets are semantically equivalent:
-- Using LEFT ANTI JOIN FROM A LEFT ANTI JOIN B ON A.ID = B.ID -- Using WHERE NOT EXISTS FROM A WHERE NOT EXISTS ( SELECT 1 FROM B WHERE A.ID = B.ID )Notice that according to Relational algebra's understanding of left anti join, the right hand side of the left anti join operator is not projected, i.e. it cannot be accessed from
WHEREorSELECTor any other clause thanON.- Specified by:
leftAntiJoinin interfaceTable<R extends Record>
-
where
public Table<R> where(Condition condition)
Description copied from interface:TableAdd aWHEREclause to the table, connecting them with each other withOperator.AND.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.
-
where
public Table<R> where(Condition... conditions)
Description copied from interface:TableAdd aWHEREclause to the table, connecting them with each other withOperator.AND.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.
-
where
public Table<R> where(Collection<? extends Condition> conditions)
Description copied from interface:TableAdd aWHEREclause to the table, connecting them with each other withOperator.AND.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.
-
where
public Table<R> where(Field<Boolean> field)
Description copied from interface:TableAdd aWHEREclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.
-
where
public Table<R> where(SQL sql)
Description copied from interface:TableAdd aWHEREclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.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!
- Specified by:
wherein interfaceTable<R extends Record>- See Also:
DSL.condition(SQL),SQL
-
where
public Table<R> where(String sql)
Description copied from interface:TableAdd aWHEREclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.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!
- Specified by:
wherein interfaceTable<R extends Record>- See Also:
DSL.condition(String),SQL
-
where
public Table<R> where(String sql, Object... bindings)
Description copied from interface:TableAdd aWHEREclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.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!
- Specified by:
wherein interfaceTable<R extends Record>- See Also:
DSL.condition(String, Object...),DSL.sql(String, Object...),SQL
-
where
public Table<R> where(String sql, QueryPart... parts)
Description copied from interface:TableAdd aWHEREclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.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!
- Specified by:
wherein interfaceTable<R extends Record>- See Also:
DSL.condition(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
whereExists
public Table<R> whereExists(Select<?> select)
Description copied from interface:TableAdd aWHERE EXISTSclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.- Specified by:
whereExistsin interfaceTable<R extends Record>
-
whereNotExists
public Table<R> whereNotExists(Select<?> select)
Description copied from interface:TableAdd aWHERE NOT EXISTSclause to the table.The resulting table acts like a derived table that projects all of this table's columns and filters by the argument
Condition. If syntactically reasonable, the derived table may be inlined to the query that selects from the resulting table.- Specified by:
whereNotExistsin interfaceTable<R extends Record>
-
join
public final TableOptionalOnStep<Record> join(TableLike<?> table, JoinType type)
Description copied from interface:TableJoin a table to this table using aJoinTypeDepending on the
JoinType, a subsequentTableOnStep.on(Condition)orTableOnStep.using(Field...)clause is required. If it is required but omitted, aDSL.trueCondition(), i.e.1 = 1condition will be rendered
-
join
public final TableOnStep<Record> join(TableLike<?> table)
Description copied from interface:TableINNER JOINa table to this table.A synonym for
Table.innerJoin(TableLike).- Specified by:
joinin interfaceTable<R extends Record>- See Also:
Table.innerJoin(TableLike)
-
join
public final TableOnStep<Record> join(SQL sql)
Description copied from interface:TableINNER JOINa table to this table.A synonym for
Table.innerJoin(String).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!
- Specified by:
joinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),Table.innerJoin(SQL),SQL
-
join
public final TableOnStep<Record> join(String sql)
Description copied from interface:TableINNER JOINa table to this table.A synonym for
Table.innerJoin(String).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!
- Specified by:
joinin interfaceTable<R extends Record>- See Also:
DSL.table(String),Table.innerJoin(String),SQL
-
join
public final TableOnStep<Record> join(String sql, Object... bindings)
Description copied from interface:TableINNER JOINa table to this table.A synonym for
Table.innerJoin(String, Object...).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!
- Specified by:
joinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),Table.innerJoin(String, Object...),SQL
-
join
public final TableOnStep<Record> join(String sql, QueryPart... parts)
Description copied from interface:TableINNER JOINa table to this table.A synonym for
Table.innerJoin(String, QueryPart...).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!
- Specified by:
joinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),Table.innerJoin(String, QueryPart...),SQL
-
join
public final TableOnStep<Record> join(Name name)
Description copied from interface:TableINNER JOINa table to this table.A synonym for
Table.innerJoin(Name).- Specified by:
joinin interfaceTable<R extends Record>- See Also:
DSL.table(Name),Table.innerJoin(Name)
-
innerJoin
public final TableOnStep<Record> innerJoin(TableLike<?> table)
Description copied from interface:TableINNER JOINa table to this table.
-
innerJoin
public final TableOnStep<Record> innerJoin(SQL sql)
Description copied from interface:TableINNER JOINa table to this table.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!
- Specified by:
innerJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
innerJoin
public final TableOnStep<Record> innerJoin(String sql)
Description copied from interface:TableINNER JOINa table to this table.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!
- Specified by:
innerJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
innerJoin
public final TableOnStep<Record> innerJoin(String sql, Object... bindings)
Description copied from interface:TableINNER JOINa table to this table.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!
- Specified by:
innerJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
innerJoin
public final TableOnStep<Record> innerJoin(String sql, QueryPart... parts)
Description copied from interface:TableINNER JOINa table to this table.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!
- Specified by:
innerJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
innerJoin
public final TableOnStep<Record> innerJoin(Name name)
Description copied from interface:TableINNER JOINa table to this table.- Specified by:
innerJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
partitionBy
@Pro public TableOuterJoinStep<Record> partitionBy(Field<?>... fields)
Description copied from interface:TableAdd aPARTITION BYclause to the left hand side of theOUTER JOINkeywords- Specified by:
partitionByin interfaceTable<R extends Record>
-
partitionBy
@Pro public TableOuterJoinStep<Record> partitionBy(Collection<? extends Field<?>> fields)
Description copied from interface:TableAdd aPARTITION BYclause to the left hand side of theOUTER JOINkeywords- Specified by:
partitionByin interfaceTable<R extends Record>
-
leftJoin
public final TablePartitionByStep<Record> leftJoin(TableLike<?> table)
Description copied from interface:TableLEFT OUTER JOINa table to this table.A synonym for
Table.leftOuterJoin(TableLike).- Specified by:
leftJoinin interfaceTable<R extends Record>- See Also:
Table.leftOuterJoin(TableLike)
-
leftJoin
public final TablePartitionByStep<Record> leftJoin(SQL sql)
Description copied from interface:TableLEFT OUTER JOINa table to this table.A synonym for
Table.leftOuterJoin(String).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!
- Specified by:
leftJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),Table.leftOuterJoin(SQL),SQL
-
leftJoin
public final TablePartitionByStep<Record> leftJoin(String sql)
Description copied from interface:TableLEFT OUTER JOINa table to this table.A synonym for
Table.leftOuterJoin(String).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!
- Specified by:
leftJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),Table.leftOuterJoin(String),SQL
-
leftJoin
public final TablePartitionByStep<Record> leftJoin(String sql, Object... bindings)
Description copied from interface:TableLEFT OUTER JOINa table to this table.A synonym for
Table.leftOuterJoin(String, Object...).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!
- Specified by:
leftJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),Table.leftOuterJoin(String, Object...),SQL
-
leftJoin
public final TablePartitionByStep<Record> leftJoin(String sql, QueryPart... parts)
Description copied from interface:TableLEFT OUTER JOINa table to this table.A synonym for
Table.leftOuterJoin(String, QueryPart...).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!
- Specified by:
leftJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),Table.leftOuterJoin(String, QueryPart...),SQL
-
leftJoin
public final TablePartitionByStep<Record> leftJoin(Name name)
Description copied from interface:TableLEFT OUTER JOINa table to this table.A synonym for
Table.leftOuterJoin(Name).- Specified by:
leftJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name),Table.leftOuterJoin(Name)
-
leftOuterJoin
public final TablePartitionByStep<Record> leftOuterJoin(TableLike<?> table)
Description copied from interface:TableLEFT OUTER JOINa table to this table.- Specified by:
leftOuterJoinin interfaceTable<R extends Record>
-
leftOuterJoin
public final TablePartitionByStep<Record> leftOuterJoin(SQL sql)
Description copied from interface:TableLEFT OUTER JOINa table to this table.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!
- Specified by:
leftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
leftOuterJoin
public final TablePartitionByStep<Record> leftOuterJoin(String sql)
Description copied from interface:TableLEFT OUTER JOINa table to this table.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!
- Specified by:
leftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
leftOuterJoin
public final TablePartitionByStep<Record> leftOuterJoin(String sql, Object... bindings)
Description copied from interface:TableLEFT OUTER JOINa table to this table.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!
- Specified by:
leftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
leftOuterJoin
public final TablePartitionByStep<Record> leftOuterJoin(String sql, QueryPart... parts)
Description copied from interface:TableLEFT OUTER JOINa table to this table.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!
- Specified by:
leftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
leftOuterJoin
public final TablePartitionByStep<Record> leftOuterJoin(Name name)
Description copied from interface:TableLEFT OUTER JOINa table to this table.- Specified by:
leftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name),SQL
-
rightJoin
public final TablePartitionByStep<Record> rightJoin(TableLike<?> table)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.A synonym for
Table.rightOuterJoin(TableLike).This is only possible where the underlying RDBMS supports it.
- Specified by:
rightJoinin interfaceTable<R extends Record>- See Also:
Table.rightOuterJoin(TableLike)
-
rightJoin
public final TablePartitionByStep<Record> rightJoin(SQL sql)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.A synonym for
Table.rightOuterJoin(String).This is only possible where the underlying RDBMS supports it.
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!
- Specified by:
rightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),Table.rightOuterJoin(SQL),SQL
-
rightJoin
public final TablePartitionByStep<Record> rightJoin(String sql)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.A synonym for
Table.rightOuterJoin(String).This is only possible where the underlying RDBMS supports it.
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!
- Specified by:
rightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),Table.rightOuterJoin(String),SQL
-
rightJoin
public final TablePartitionByStep<Record> rightJoin(String sql, Object... bindings)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.A synonym for
Table.rightOuterJoin(String, Object...).This is only possible where the underlying RDBMS supports it.
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!
- Specified by:
rightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),Table.rightOuterJoin(String, Object...),SQL
-
rightJoin
public final TablePartitionByStep<Record> rightJoin(String sql, QueryPart... parts)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.A synonym for
Table.rightOuterJoin(String, QueryPart...).This is only possible where the underlying RDBMS supports it
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!
- Specified by:
rightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),Table.rightOuterJoin(String, QueryPart...),SQL
-
rightJoin
public final TablePartitionByStep<Record> rightJoin(Name name)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.A synonym for
Table.rightOuterJoin(Name).This is only possible where the underlying RDBMS supports it
- Specified by:
rightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name),Table.rightOuterJoin(Name)
-
rightOuterJoin
public final TablePartitionByStep<Record> rightOuterJoin(TableLike<?> table)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
- Specified by:
rightOuterJoinin interfaceTable<R extends Record>
-
rightOuterJoin
public final TablePartitionByStep<Record> rightOuterJoin(SQL sql)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
rightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
rightOuterJoin
public final TablePartitionByStep<Record> rightOuterJoin(String sql)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
rightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
rightOuterJoin
public final TablePartitionByStep<Record> rightOuterJoin(String sql, Object... bindings)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
rightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
rightOuterJoin
public final TablePartitionByStep<Record> rightOuterJoin(String sql, QueryPart... parts)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
rightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
rightOuterJoin
public final TablePartitionByStep<Record> rightOuterJoin(Name name)
Description copied from interface:TableRIGHT OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
- Specified by:
rightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
fullOuterJoin
public final TableOnStep<Record> fullOuterJoin(TableLike<?> table)
Description copied from interface:TableFULL OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
- Specified by:
fullOuterJoinin interfaceTable<R extends Record>
-
fullOuterJoin
public final TableOnStep<Record> fullOuterJoin(SQL sql)
Description copied from interface:TableFULL OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
fullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
fullOuterJoin
public final TableOnStep<Record> fullOuterJoin(String sql)
Description copied from interface:TableFULL OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
fullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
fullOuterJoin
public final TableOnStep<Record> fullOuterJoin(String sql, Object... bindings)
Description copied from interface:TableFULL OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
fullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
fullOuterJoin
public final TableOnStep<Record> fullOuterJoin(String sql, QueryPart... parts)
Description copied from interface:TableFULL OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
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!
- Specified by:
fullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
fullOuterJoin
public final TableOnStep<Record> fullOuterJoin(Name name)
Description copied from interface:TableFULL OUTER JOINa table to this table.This is only possible where the underlying RDBMS supports it
- Specified by:
fullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
fullJoin
public final TableOnStep<Record> fullJoin(TableLike<?> table)
Description copied from interface:TableFULL OUTER JOINa table to this table.A synonym for
Table.fullOuterJoin(TableLike).
-
fullJoin
public final TableOnStep<Record> fullJoin(SQL sql)
Description copied from interface:TableFULL OUTER JOINa table to this table.A synonym for
Table.fullOuterJoin(SQL).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!
-
fullJoin
public final TableOnStep<Record> fullJoin(String sql)
Description copied from interface:TableFULL OUTER JOINa table to this table.A synonym for
Table.fullOuterJoin(String).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!
-
fullJoin
public final TableOnStep<Record> fullJoin(String sql, Object... bindings)
Description copied from interface:TableFULL OUTER JOINa table to this table.A synonym for
Table.fullOuterJoin(String, Object...).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!
-
fullJoin
public final TableOnStep<Record> fullJoin(String sql, QueryPart... parts)
Description copied from interface:TableFULL OUTER JOINa table to this table.A synonym for
Table.fullOuterJoin(String, QueryPart...).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!
-
fullJoin
public final TableOnStep<Record> fullJoin(Name name)
Description copied from interface:TableFULL OUTER JOINa table to this table.A synonym for
Table.fullOuterJoin(Name).
-
crossJoin
public final Table<Record> crossJoin(TableLike<?> table)
Description copied from interface:TableCROSS JOINa table to this table.If this syntax is unavailable, it is emulated with a regular
INNER JOIN. The following two constructs are equivalent:A cross join B A join B on 1 = 1
-
crossJoin
public final Table<Record> crossJoin(SQL sql)
Description copied from interface:TableCROSS JOINa table to this table.If this syntax is unavailable, it is emulated with a regular
INNER JOIN. The following two constructs are equivalent:A cross join B A join B on 1 = 1
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!
- Specified by:
crossJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
crossJoin
public final Table<Record> crossJoin(String sql)
Description copied from interface:TableCROSS JOINa table to this table.If this syntax is unavailable, it is emulated with a regular
INNER JOIN. The following two constructs are equivalent:A cross join B A join B on 1 = 1
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!
- Specified by:
crossJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
crossJoin
public final Table<Record> crossJoin(String sql, Object... bindings)
Description copied from interface:TableCROSS JOINa table to this table.If this syntax is unavailable, it is emulated with a regular
INNER JOIN. The following two constructs are equivalent:A cross join B A join B on 1 = 1
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!
- Specified by:
crossJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
crossJoin
public final Table<Record> crossJoin(String sql, QueryPart... parts)
Description copied from interface:TableCROSS JOINa table to this table.If this syntax is unavailable, it is emulated with a regular
INNER JOIN. The following two constructs are equivalent:A cross join B A join B on 1 = 1
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!
- Specified by:
crossJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
crossJoin
public final Table<Record> crossJoin(Name name)
Description copied from interface:TableCROSS JOINa table to this table.If this syntax is unavailable, it is emulated with a regular
INNER JOIN. The following two constructs are equivalent:A cross join B A join B on 1 = 1
- Specified by:
crossJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
naturalJoin
public final Table<Record> naturalJoin(TableLike<?> table)
Description copied from interface:TableNATURAL JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalJoinin interfaceTable<R extends Record>
-
naturalJoin
public final Table<Record> naturalJoin(SQL sql)
Description copied from interface:TableNATURAL JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
naturalJoin
public final Table<Record> naturalJoin(String sql)
Description copied from interface:TableNATURAL JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
naturalJoin
public final Table<Record> naturalJoin(String sql, Object... bindings)
Description copied from interface:TableNATURAL JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
naturalJoin
public final Table<Record> naturalJoin(String sql, QueryPart... parts)
Description copied from interface:TableNATURAL JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
naturalJoin
public final Table<Record> naturalJoin(Name name)
Description copied from interface:TableNATURAL JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
naturalLeftOuterJoin
public final Table<Record> naturalLeftOuterJoin(TableLike<?> table)
Description copied from interface:TableNATURAL LEFT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalLeftOuterJoinin interfaceTable<R extends Record>
-
naturalLeftOuterJoin
public final Table<Record> naturalLeftOuterJoin(SQL sql)
Description copied from interface:TableNATURAL LEFT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalLeftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
naturalLeftOuterJoin
public final Table<Record> naturalLeftOuterJoin(String sql)
Description copied from interface:TableNATURAL LEFT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalLeftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
naturalLeftOuterJoin
public final Table<Record> naturalLeftOuterJoin(String sql, Object... bindings)
Description copied from interface:TableNATURAL LEFT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalLeftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
naturalLeftOuterJoin
public final Table<Record> naturalLeftOuterJoin(String sql, QueryPart... parts)
Description copied from interface:TableNATURAL LEFT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalLeftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
naturalLeftOuterJoin
public final Table<Record> naturalLeftOuterJoin(Name name)
Description copied from interface:TableNATURAL LEFT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalLeftOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
naturalRightOuterJoin
public final Table<Record> naturalRightOuterJoin(TableLike<?> table)
Description copied from interface:TableNATURAL RIGHT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalRightOuterJoinin interfaceTable<R extends Record>
-
naturalRightOuterJoin
public final Table<Record> naturalRightOuterJoin(SQL sql)
Description copied from interface:TableNATURAL RIGHT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalRightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
naturalRightOuterJoin
public final Table<Record> naturalRightOuterJoin(String sql)
Description copied from interface:TableNATURAL RIGHT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalRightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
naturalRightOuterJoin
public final Table<Record> naturalRightOuterJoin(String sql, Object... bindings)
Description copied from interface:TableNATURAL RIGHT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalRightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
naturalRightOuterJoin
public final Table<Record> naturalRightOuterJoin(String sql, QueryPart... parts)
Description copied from interface:TableNATURAL RIGHT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalRightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
naturalRightOuterJoin
public final Table<Record> naturalRightOuterJoin(Name name)
Description copied from interface:TableNATURAL RIGHT OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalRightOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
naturalFullOuterJoin
public final Table<Record> naturalFullOuterJoin(TableLike<?> table)
Description copied from interface:TableNATURAL FULL OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalFullOuterJoinin interfaceTable<R extends Record>
-
naturalFullOuterJoin
public final Table<Record> naturalFullOuterJoin(SQL sql)
Description copied from interface:TableNATURAL FULL OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalFullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
naturalFullOuterJoin
public final Table<Record> naturalFullOuterJoin(String sql)
Description copied from interface:TableNATURAL FULL OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalFullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
naturalFullOuterJoin
public final Table<Record> naturalFullOuterJoin(String sql, Object... bindings)
Description copied from interface:TableNATURAL FULL OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalFullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
naturalFullOuterJoin
public final Table<Record> naturalFullOuterJoin(String sql, QueryPart... parts)
Description copied from interface:TableNATURAL FULL OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
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!
- Specified by:
naturalFullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
naturalFullOuterJoin
public final Table<Record> naturalFullOuterJoin(Name name)
Description copied from interface:TableNATURAL FULL OUTER JOINa table to this table.If this is not supported by your RDBMS, then jOOQ will try to emulate this behaviour using the information provided in this query.
- Specified by:
naturalFullOuterJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
crossApply
public final Table<Record> crossApply(TableLike<?> table)
Description copied from interface:TableCROSS APPLYa table to this table.- Specified by:
crossApplyin interfaceTable<R extends Record>
-
crossApply
public final Table<Record> crossApply(SQL sql)
Description copied from interface:TableCROSS APPLYa table to this table.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!
- Specified by:
crossApplyin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
crossApply
public final Table<Record> crossApply(String sql)
Description copied from interface:TableCROSS APPLYa table to this table.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!
- Specified by:
crossApplyin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
crossApply
public final Table<Record> crossApply(String sql, Object... bindings)
Description copied from interface:TableCROSS APPLYa table to this table.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!
- Specified by:
crossApplyin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
crossApply
public final Table<Record> crossApply(String sql, QueryPart... parts)
Description copied from interface:TableCROSS APPLYa table to this table.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!
- Specified by:
crossApplyin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
crossApply
public final Table<Record> crossApply(Name name)
Description copied from interface:TableCROSS APPLYa table to this table.- Specified by:
crossApplyin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
outerApply
public final Table<Record> outerApply(TableLike<?> table)
Description copied from interface:TableOUTER APPLYa table to this table.- Specified by:
outerApplyin interfaceTable<R extends Record>
-
outerApply
public final Table<Record> outerApply(SQL sql)
Description copied from interface:TableOUTER APPLYa table to this table.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!
- Specified by:
outerApplyin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
outerApply
public final Table<Record> outerApply(String sql)
Description copied from interface:TableOUTER APPLYa table to this table.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!
- Specified by:
outerApplyin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
outerApply
public final Table<Record> outerApply(String sql, Object... bindings)
Description copied from interface:TableOUTER APPLYa table to this table.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!
- Specified by:
outerApplyin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
outerApply
public final Table<Record> outerApply(String sql, QueryPart... parts)
Description copied from interface:TableOUTER APPLYa table to this table.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!
- Specified by:
outerApplyin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
outerApply
public final Table<Record> outerApply(Name name)
Description copied from interface:TableOUTER APPLYa table to this table.- Specified by:
outerApplyin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
straightJoin
public final TableOptionalOnStep<Record> straightJoin(TableLike<?> table)
Description copied from interface:TableSTRAIGHT_JOINa table to this table.- Specified by:
straightJoinin interfaceTable<R extends Record>
-
straightJoin
public final TableOptionalOnStep<Record> straightJoin(SQL sql)
Description copied from interface:TableSTRAIGHT_JOINa table to this table.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!
- Specified by:
straightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(SQL),SQL
-
straightJoin
public final TableOptionalOnStep<Record> straightJoin(String sql)
Description copied from interface:TableSTRAIGHT_JOINa table to this table.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!
- Specified by:
straightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String),SQL
-
straightJoin
public final TableOptionalOnStep<Record> straightJoin(String sql, Object... bindings)
Description copied from interface:TableSTRAIGHT_JOINa table to this table.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!
- Specified by:
straightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, Object...),DSL.sql(String, Object...),SQL
-
straightJoin
public final TableOptionalOnStep<Record> straightJoin(String sql, QueryPart... parts)
Description copied from interface:TableSTRAIGHT_JOINa table to this table.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!
- Specified by:
straightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(String, QueryPart...),DSL.sql(String, QueryPart...),SQL
-
straightJoin
public final TableOptionalOnStep<Record> straightJoin(Name name)
Description copied from interface:TableSTRAIGHT_JOINa table to this table.- Specified by:
straightJoinin interfaceTable<R extends Record>- See Also:
DSL.table(Name)
-
getName
public final String getName()
Description copied from interface:NamedThe unqualified name of this object.
-
getQualifiedName
public Name getQualifiedName()
Description copied from interface:NamedThe qualified name of this object.- Specified by:
getQualifiedNamein interfaceNamed
-
getUnqualifiedName
public final Name getUnqualifiedName()
Description copied from interface:NamedThe unqualified name of this object.- Specified by:
getUnqualifiedNamein interfaceNamed
-
getComment
public final String getComment()
Description copied from interface:NamedThe comment on this object.- Specified by:
getCommentin interfaceNamed
-
hashCode
public int hashCode()
Description copied from interface:QueryPartGenerate a hash code from thisQueryPart.In general,
QueryParthash codes are the same as the hash codes generated fromQueryPart.toString(). This guarantees consistent behaviour withQueryPart.equals(Object)Some
QueryPartimplementations may choose to override this behaviour for improved performance, asQueryPart.toString()is an expensive operation, if called many times.
-
toSQL
@Deprecated public final void toSQL(RenderContext context)
Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)instead.Description copied from interface:QueryPartInternalRender thisQueryPartto a SQL string contained incontext.sql(). Thecontextwill contain additional information about how to render thisQueryPart, e.g. whether thisQueryPartshould be rendered as a declaration or reference, whether thisQueryPart's contained bind variables should be inlined or replaced by'?', etc.- Specified by:
toSQLin interfaceQueryPartInternal
-
bind
@Deprecated public final void bind(BindContext context) throws DataAccessException
Deprecated.- 3.4.0 - [#2694] - UseQueryPartInternal.accept(Context)instead.Description copied from interface:QueryPartInternalBind all parameters of thisQueryPartto a PreparedStatementThis method is for JOOQ INTERNAL USE only. Do not reference directly
- Specified by:
bindin interfaceQueryPartInternal- Parameters:
context- The context holding the next bind index and other information for variable binding- Throws:
DataAccessException- If something went wrong while binding a variable
-
declaresWindows
public boolean declaresWindows()
Subclasses may override this- Specified by:
declaresWindowsin interfaceQueryPartInternal
-
declaresCTE
public boolean declaresCTE()
Subclasses may override this- Specified by:
declaresCTEin interfaceQueryPartInternal
-
generatesCast
public boolean generatesCast()
Subclasses may override this- Specified by:
generatesCastin interfaceQueryPartInternal
-
toString
public String toString()
Description copied from interface:QueryPartRender a SQL string representation of thisQueryPart.For improved debugging, this renders a SQL string of this
QueryPartwith inlined bind variables. If thisQueryPartisAttachable, then the attachedConfigurationmay be used for rendering the SQL string, includingSQLDialectandSettings. Do note that mostQueryPartinstances are not attached to aConfiguration, and thus there is no guarantee that the SQL string will make sense in the context of a specific database.
-
create
@Deprecated protected final DSLContext create()
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()andConfiguration.dsl()instead.Internal convenience method
-
create
@Deprecated protected final DSLContext create(Configuration configuration)
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()andConfiguration.dsl()instead.Internal convenience method
-
create
@Deprecated protected final DSLContext create(Context<?> ctx)
Deprecated.- 3.11.0 - [#6722] - UseAttachable.configuration()andConfiguration.dsl()instead.Internal convenience method
-
translate
protected final DataAccessException translate(String sql, SQLException e)
Internal convenience method
-
-