public class TableImpl<R extends Record>
extends java.lang.Object
This type is for JOOQ INTERNAL USE only. Do not reference directly
| Modifier and Type | Field and Description | 
|---|---|
| protected Field<?>[] | parameters | 
| Constructor and Description | 
|---|
| TableImpl(java.lang.String name) | 
| TableImpl(java.lang.String name,
         Schema schema) | 
| TableImpl(java.lang.String name,
         Schema schema,
         Table<R> aliased) | 
| TableImpl(java.lang.String name,
         Schema schema,
         Table<R> aliased,
         Field<?>[] parameters) | 
| TableImpl(java.lang.String name,
         Schema schema,
         Table<R> aliased,
         Field<?>[] parameters,
         java.lang.String comment) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | accept(Context<?> ctx) | 
| Table<R> | as(java.lang.String as)Subclasses may override this method to provide custom aliasing
 implementations
 
 Create an alias for this table. | 
| Table<R> | as(java.lang.String as,
  java.lang.String... fieldAliases)Subclasses may override this method to provide custom aliasing
 implementations
 
 Create an alias for this table and its fields
 
 Note that the case-sensitivity of the returned table and columns depends
 on  Settings.getRenderNameStyle(). | 
| Table<R> | asOfScn(Field<? extends java.lang.Number> scn)Create an  SQLDialect.ORACLEflashback query clause from this
 table. | 
| Table<R> | asOfScn(java.lang.Number scn)Create an  SQLDialect.ORACLEflashback query clause from this
 table. | 
| Table<R> | asOfTimestamp(Field<java.sql.Timestamp> timestamp)Create an  SQLDialect.ORACLEflashback query clause from this
 table. | 
| Table<R> | asOfTimestamp(java.sql.Timestamp timestamp)Create an  SQLDialect.ORACLEflashback query clause from this
 table. | 
| Table<R> | asTable()The underlying table representation of this object
 
 This method is useful for things like
  SELECT * FROM (SELECT * FROM x WHERE x.a = '1') WHERE ... | 
| Table<R> | asTable(java.lang.String alias)The underlying aliased table representation of this object | 
| Table<R> | asTable(java.lang.String alias,
       java.lang.String... fieldAliases)The underlying aliased table representation of this object | 
| void | bind(BindContext ctx)Deprecated.  | 
| Clause[] | clauses(Context<?> ctx)The  Clauses that are represented by this query part. | 
| protected DSLContext | create()Internal convenience method | 
| protected DSLContext | create(Configuration configuration)Internal convenience method | 
| protected DSLContext | create(Context<?> ctx)Internal convenience method | 
| protected <T> TableField<R,T> | createField(java.lang.String name,
           DataType<T> type)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected <T> TableField<R,T> | createField(java.lang.String name,
           DataType<T> type,
           java.lang.String comment)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected <T,U> TableField<R,U> | createField(java.lang.String name,
           DataType<T> type,
           java.lang.String comment,
           Binding<T,U> binding)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected <T,U> TableField<R,U> | createField(java.lang.String name,
           DataType<T> type,
           java.lang.String comment,
           Converter<T,U> converter)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected <T,X,U> TableField<R,U> | createField(java.lang.String name,
           DataType<T> type,
           java.lang.String comment,
           Converter<X,U> converter,
           Binding<T,X> binding)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected static <R extends Record,T> | createField(java.lang.String name,
           DataType<T> type,
           Table<R> table)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected static <R extends Record,T> | createField(java.lang.String name,
           DataType<T> type,
           Table<R> table,
           java.lang.String comment)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected static <R extends Record,T,U> | createField(java.lang.String name,
           DataType<T> type,
           Table<R> table,
           java.lang.String comment,
           Binding<T,U> binding)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected static <R extends Record,T,U> | createField(java.lang.String name,
           DataType<T> type,
           Table<R> table,
           java.lang.String comment,
           Converter<T,U> converter)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| protected static <R extends Record,T,X,U> | createField(java.lang.String name,
           DataType<T> type,
           Table<R> table,
           java.lang.String comment,
           Converter<X,U> converter,
           Binding<T,X> binding)Subclasses may call this method to create  TableFieldobjects that
 are linked to this table. | 
| Table<Record> | crossApply(java.lang.String sql)CROSS APPLYa table to this table. | 
| Table<Record> | crossApply(java.lang.String sql,
          java.lang.Object... bindings)CROSS APPLYa table to this table. | 
| Table<Record> | crossApply(java.lang.String sql,
          QueryPart... parts)CROSS APPLYa table to this table. | 
| Table<Record> | crossApply(TableLike<?> table)CROSS APPLYa table to this table. | 
| Table<Record> | crossJoin(java.lang.String sql)CROSS JOINa table to this table. | 
| Table<Record> | crossJoin(java.lang.String sql,
         java.lang.Object... bindings)CROSS JOINa table to this table. | 
| Table<Record> | crossJoin(java.lang.String sql,
         QueryPart... parts)CROSS JOINa table to this table. | 
| Table<Record> | crossJoin(TableLike<?> table)CROSS JOINa table to this table. | 
| boolean | declaresCTE()Subclasses may override this | 
| boolean | declaresFields()Subclasses may override this | 
| boolean | declaresTables()Subclasses may override this | 
| boolean | declaresWindows()Subclasses may override this | 
| DivideByOnStep | divideBy(Table<?> divisor)Create a new  TABLEreference from this table, applying
 relational division. | 
| boolean | equals(java.lang.Object that)Check whether this  QueryPartcan be considered equal to
 anotherQueryPart. | 
| <T> Field<T> | field(Field<T> field)Get a specific field from this Record. | 
| Field<?> | field(int index)Get a specific field from this Record. | 
| <T> Field<T> | field(int index,
     java.lang.Class<T> type)Get a specific field from this Record and coerce it to  type. | 
| <T> Field<T> | field(int index,
     DataType<T> dataType)Get a specific field from this Record and coerce it to
  dataType. | 
| Field<?> | field(java.lang.String string)Get a specific field from this Record. | 
| <T> Field<T> | field(java.lang.String name,
     java.lang.Class<T> type)Get a specific field from this Record and coerce it to  type. | 
| <T> Field<T> | field(java.lang.String name,
     DataType<T> dataType)Get a specific field from this Record and coerce it to
  dataType. | 
| Field<?>[] | fields()Get all fields from this Record. | 
| Row | fieldsRow()Get this table's fields as a  Row | 
| Table<R> | forceIndex(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | forceIndexForGroupBy(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | forceIndexForJoin(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | forceIndexForOrderBy(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| TableOnStep | fullOuterJoin(java.lang.String sql)FULL OUTER JOINa table to this table. | 
| TableOnStep | fullOuterJoin(java.lang.String sql,
             java.lang.Object... bindings)FULL OUTER JOINa table to this table. | 
| TableOnStep | fullOuterJoin(java.lang.String sql,
             QueryPart... parts)FULL OUTER JOINa table to this table. | 
| TableOnStep | fullOuterJoin(TableLike<?> table)FULL OUTER JOINa table to this table. | 
| java.lang.String | getComment()The comment given to the table. | 
| Identity<R,? extends java.lang.Number> | getIdentity()Retrieve the table's  IDENTITYinformation, if available. | 
| java.util.List<UniqueKey<R>> | getKeys()Retrieve all of the table's unique keys. | 
| java.lang.String | getName()The name of this table. | 
| UniqueKey<R> | getPrimaryKey()Retrieve the table's primary key | 
| TableField<R,? extends java.util.Date> | getRecordTimestamp()A "timestamp" field holding record timestamp information used for
 optimistic locking
 
 jOOQ supports optimistic locking in  UpdatableRecord.store()andUpdatableRecord.delete()ifSettings.isExecuteWithOptimisticLocking()is enabled. | 
| java.lang.Class<? extends R> | getRecordType()Subclasses must override this method if they use the generic type
 parameter  RecordThe record type produced by this table. | 
| TableField<R,? extends java.lang.Number> | getRecordVersion()A "version" field holding record version information used for optimistic
 locking
 
 jOOQ supports optimistic locking in  UpdatableRecord.store()andUpdatableRecord.delete()ifSettings.isExecuteWithOptimisticLocking()is enabled. | 
| java.util.List<ForeignKey<R,?>> | getReferences()Get the list of  FOREIGN KEY's of this table | 
| <O extends Record> | getReferencesFrom(Table<O> other)Get a list of  FOREIGN KEY's of a specific table, referencing
 a this table. | 
| <O extends Record> | getReferencesTo(Table<O> other)Get a list of  FOREIGN KEY's of this table, referencing a
 specific table. | 
| Schema | getSchema()Get the table schema. | 
| int | hashCode()Generate a hash code from this  QueryPart. | 
| Table<R> | ignoreIndex(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | ignoreIndexForGroupBy(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | ignoreIndexForJoin(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | ignoreIndexForOrderBy(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| TableOnStep | join(java.lang.String sql)INNER JOINa table to this table. | 
| TableOnStep | join(java.lang.String sql,
    java.lang.Object... bindings)INNER JOINa table to this table. | 
| TableOnStep | join(java.lang.String sql,
    QueryPart... parts)INNER JOINa table to this table. | 
| TableOnStep | join(TableLike<?> table)INNER JOINa table to this table. | 
| TableOptionalOnStep | join(TableLike<?> table,
    JoinType type)Join a table to this table using a  JoinTypeDepending on theJoinType, a subsequentTableOnStep.on(Condition...)orTableOnStep.using(Field...)clause is required. | 
| TablePartitionByStep | leftOuterJoin(java.lang.String sql)LEFT OUTER JOINa table to this table. | 
| TablePartitionByStep | leftOuterJoin(java.lang.String sql,
             java.lang.Object... bindings)LEFT OUTER JOINa table to this table. | 
| TablePartitionByStep | leftOuterJoin(java.lang.String sql,
             QueryPart... parts)LEFT OUTER JOINa table to this table. | 
| TablePartitionByStep | leftOuterJoin(TableLike<?> table)LEFT OUTER JOINa table to this table. | 
| Table<Record> | naturalJoin(java.lang.String sql)NATURAL JOINa table to this table. | 
| Table<Record> | naturalJoin(java.lang.String sql,
           java.lang.Object... bindings)NATURAL JOINa table to this table. | 
| Table<Record> | naturalJoin(java.lang.String sql,
           QueryPart... parts)NATURAL JOINa table to this table. | 
| Table<Record> | naturalJoin(TableLike<?> table)NATURAL JOINa table to this table. | 
| Table<Record> | naturalLeftOuterJoin(java.lang.String sql)NATURAL LEFT OUTER JOINa table to this table. | 
| Table<Record> | naturalLeftOuterJoin(java.lang.String sql,
                    java.lang.Object... bindings)NATURAL LEFT OUTER JOINa table to this table. | 
| Table<Record> | naturalLeftOuterJoin(java.lang.String sql,
                    QueryPart... parts)NATURAL LEFT OUTER JOINa table to this table. | 
| Table<Record> | naturalLeftOuterJoin(TableLike<?> table)NATURAL LEFT OUTER JOINa table to this table. | 
| Table<Record> | naturalRightOuterJoin(java.lang.String sql)NATURAL RIGHT OUTER JOINa table to this table. | 
| Table<Record> | naturalRightOuterJoin(java.lang.String sql,
                     java.lang.Object... bindings)NATURAL RIGHT OUTER JOINa table to this table. | 
| Table<Record> | naturalRightOuterJoin(java.lang.String sql,
                     QueryPart... parts)NATURAL RIGHT OUTER JOINa table to this table. | 
| Table<Record> | naturalRightOuterJoin(TableLike<?> table)NATURAL RIGHT OUTER JOINa table to this table. | 
| R | newRecord()Create a new  Recordof this table's type. | 
| Table<Record> | outerApply(java.lang.String sql)OUTER APPLYa table to this table. | 
| Table<Record> | outerApply(java.lang.String sql,
          java.lang.Object... bindings)OUTER APPLYa table to this table. | 
| Table<Record> | outerApply(java.lang.String sql,
          QueryPart... parts)OUTER APPLYa table to this table. | 
| Table<Record> | outerApply(TableLike<?> table)OUTER APPLYa table to this table. | 
| PivotForStep | pivot(java.util.Collection<? extends Field<?>> aggregateFunctions)Create a new  TABLEreference from this table, pivoting it
 into another form. | 
| PivotForStep | pivot(Field<?>... aggregateFunctions)Create a new  TABLEreference from this table, pivoting it
 into another form. | 
| RecordType<R> | recordType()The record type produced by this table. | 
| TablePartitionByStep | rightOuterJoin(java.lang.String sql)RIGHT OUTER JOINa table to this table. | 
| TablePartitionByStep | rightOuterJoin(java.lang.String sql,
              java.lang.Object... bindings)RIGHT OUTER JOINa table to this table. | 
| TablePartitionByStep | rightOuterJoin(java.lang.String sql,
              QueryPart... parts)RIGHT OUTER JOINa table to this table. | 
| TablePartitionByStep | rightOuterJoin(TableLike<?> table)RIGHT OUTER JOINa table to this table. | 
| void | toSQL(RenderContext ctx)Deprecated.  | 
| java.lang.String | toString()Render a SQL string of this  QueryPartFor improved debugging, this renders a SQL string of thisQueryPartwith inlined bind variables. | 
| protected DataAccessException | translate(java.lang.String sql,
         java.sql.SQLException e)Internal convenience method | 
| Table<R> | useIndex(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | useIndexForGroupBy(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | useIndexForJoin(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| Table<R> | useIndexForOrderBy(java.lang.String... indexes)Specify a MySQL style table hint for query optimisation. | 
| VersionsBetweenAndStep<R,java.lang.Number> | versionsBetweenScn(Field<? extends java.lang.Number> scn)Create an  SQLDialect.ORACLEflashback versions query clause from
 this table. | 
| VersionsBetweenAndStep<R,java.lang.Number> | versionsBetweenScn(java.lang.Number scn)Create an  SQLDialect.ORACLEflashback versions query clause from
 this table. | 
| VersionsBetweenAndStep<R,java.lang.Number> | versionsBetweenScnMinvalue()Create an  SQLDialect.ORACLEflashback versions query clause from
 this table. | 
| VersionsBetweenAndStep<R,java.sql.Timestamp> | versionsBetweenTimestamp(Field<java.sql.Timestamp> timestamp)Create an  SQLDialect.ORACLEflashback versions query clause from
 this table. | 
| VersionsBetweenAndStep<R,java.sql.Timestamp> | versionsBetweenTimestamp(java.sql.Timestamp timestamp)Create an  SQLDialect.ORACLEflashback versions query clause from
 this table. | 
| VersionsBetweenAndStep<R,java.sql.Timestamp> | versionsBetweenTimestampMinvalue()Create an  SQLDialect.ORACLEflashback versions query clause from
 this table. | 
| Table<R> | with(java.lang.String hint)Specify a SQL Server style table hint for query optimisation. | 
protected final Field<?>[] parameters
public TableImpl(java.lang.String name)
public TableImpl(java.lang.String name,
                 Schema schema)
public TableImpl(java.lang.String name,
                 Schema schema,
                 Table<R> aliased,
                 Field<?>[] parameters)
public final Clause[] clauses(Context<?> ctx)
QueryPartInternalClauses that are represented by this query part.
 
 QueryParts can specify several Clauses for which an
 event will be emitted before (in forward
 order) and after (in reverse order) visiting
 the the query part through Context.visit(QueryPart)
 
This method is for JOOQ INTERNAL USE only. Do not reference directly
clauses in interface QueryPartInternalClauses represented by this query part or
         null or an empty array if this query part does not
         represent a clause.public final void accept(Context<?> ctx)
QueryPartInternalQueryPart can accept a Context object
 in order to render a SQL string or to bind its variables.accept in interface QueryPartInternalpublic Table<R> as(java.lang.String as)
Create an alias for this table.
 Note that the case-sensitivity of the returned table depends on
 Settings.getRenderNameStyle(). By default, table aliases are
 quoted, and thus case-sensitive!
as - The alias namepublic Table<R> as(java.lang.String as, java.lang.String... fieldAliases)
Create an alias for this table and its fields
 Note that the case-sensitivity of the returned table and columns depends
 on Settings.getRenderNameStyle(). By default, table aliases are
 quoted, and thus case-sensitive!
 
 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)
 
 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 - The alias namefieldAliases - The field aliases. Excess aliases are ignored,
            missing aliases will be substituted by this table's field
            names.public java.lang.Class<? extends R> getRecordType()
Record
 The record type produced by this table.
public boolean declaresTables()
declaresTables in interface QueryPartInternalpublic boolean equals(java.lang.Object that)
QueryPartQueryPart can be considered equal to
 another QueryPart.
 
 In general, QueryPart equality is defined in terms of
 QueryPart.toString() equality. In other words, two query parts are
 considered equal if their rendered SQL (with inlined bind variables) is
 equal. This means that the two query parts do not necessarily have to be
 of the same type.
 
 Some QueryPart implementations may choose to override this
 behaviour for improved performance, as QueryPart.toString() is an
 expensive operation, if called many times.
public final RecordType<R> recordType()
TablerecordType in interface Table<R extends Record>public final R newRecord()
TableRecord of this table's type.newRecord in interface Table<R extends Record>DSLContext.newRecord(Table)public final Row fieldsRow()
TableLikeRowpublic final <T> Field<T> field(Field<T> field)
TableLikefield in interface TableLike<R extends Record>Row.field(Field)public final Field<?> field(java.lang.String string)
TableLikefield in interface TableLike<R extends Record>Row.field(String)public final <T> Field<T> field(java.lang.String name, java.lang.Class<T> type)
TableLiketype.field in interface TableLike<R extends Record>Row.field(String, Class)public final <T> Field<T> field(java.lang.String name, DataType<T> dataType)
TableLikedataType.field in interface TableLike<R extends Record>Row.field(String, DataType)public final Field<?> field(int index)
TableLikefield in interface TableLike<R extends Record>Row.field(int)public final <T> Field<T> field(int index, java.lang.Class<T> type)
TableLiketype.field in interface TableLike<R extends Record>Row.field(int, Class)public final <T> Field<T> field(int index, DataType<T> dataType)
TableLikedataType.field in interface TableLike<R extends Record>Row.field(int, DataType)public final Field<?>[] fields()
TableLikefields in interface TableLike<R extends Record>Row.fields()public final Table<R> asTable()
TableLike
 This method is useful for things like
 SELECT * FROM (SELECT * FROM x WHERE x.a = '1') WHERE ... 
public final Table<R> asTable(java.lang.String alias)
TableLikeasTable in interface TableLike<R extends Record>Table.as(String)public final Table<R> asTable(java.lang.String alias, java.lang.String... fieldAliases)
TableLikeasTable in interface TableLike<R extends Record>Table.as(String, String...)public final Schema getSchema()
Tablepublic final java.lang.String getName()
Tablepublic final java.lang.String getComment()
Table
 If this Table is a generated table from your database, it
 may provide its DDL comment through this method. All other table
 expressions return the empty string "" here, never
 null.
getComment in interface Table<R extends Record>public Identity<R,? extends java.lang.Number> getIdentity()
IDENTITY information, if available.
 
 With SQL:2003, the concept of IDENTITY columns was
 introduced in most RDBMS. These are special kinds of columns that have
 auto-increment functionality when INSERT statements are
 performed.
 
 An IDENTITY column is usually part of the
 PRIMARY KEY or of a UNIQUE KEY in the table,
 although in some RDBMS, this is not required. There can only be at most
 one IDENTITY column.
 
Note: Unfortunately, this is not supported in the Oracle dialect, where identities simulated by triggers cannot be formally detected.
Subclasses should override this method
getIdentity in interface Table<R extends Record>IDENTITY information, or
         null, if no such information is available.public UniqueKey<R> getPrimaryKey()
Subclasses may override this method
getPrimaryKey in interface Table<R extends Record>null for an updatable
         table.public TableField<R,? extends java.lang.Number> getRecordVersion()
 jOOQ supports optimistic locking in UpdatableRecord.store() and
 UpdatableRecord.delete() if
 Settings.isExecuteWithOptimisticLocking() is enabled. Optimistic
 locking is performed in a single UPDATE or
 DELETE statement if tables provide a "version" or
 "timestamp" field, or in two steps using an additional
 SELECT .. FOR UPDATE statement 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
getRecordVersion in interface Table<R extends Record>null, if this table has no
         "version" field.Table.getRecordTimestamp(), 
UpdatableRecord.store(), 
UpdatableRecord.delete(), 
Settings.isExecuteWithOptimisticLocking()public TableField<R,? extends java.util.Date> getRecordTimestamp()
 jOOQ supports optimistic locking in UpdatableRecord.store() and
 UpdatableRecord.delete() if
 Settings.isExecuteWithOptimisticLocking() is enabled. Optimistic
 locking is performed in a single UPDATE or
 DELETE statement if tables provide a "version" or
 "timestamp" field, or in two steps using an additional
 SELECT .. FOR UPDATE statement 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
getRecordTimestamp in interface Table<R extends Record>null, if this table has no
         "timestamp" field.Table.getRecordVersion(), 
UpdatableRecord.store(), 
UpdatableRecord.delete(), 
Settings.isExecuteWithOptimisticLocking()public java.util.List<UniqueKey<R>> getKeys()
Subclasses should override this method
getKeys in interface Table<R extends Record>null. This is never empty
         for a Table with a Table.getPrimaryKey(). This
         method returns an unmodifiable list.public final <O extends Record> java.util.List<ForeignKey<O,R>> getReferencesFrom(Table<O> other)
FOREIGN KEY's of a specific table, referencing
 a this table.getReferencesFrom in interface Table<R extends Record>O - The other table's record typeother - The other table of the foreign key relationshipFOREIGN KEY's towards an this
         table. This is never null. This method returns an
         unmodifiable list.public java.util.List<ForeignKey<R,?>> getReferences()
FOREIGN KEY's of this table
 Subclasses should override this method
getReferences in interface Table<R extends Record>FOREIGN KEY's. This is never
         null.public final <O extends Record> java.util.List<ForeignKey<R,O>> getReferencesTo(Table<O> other)
FOREIGN KEY's of this table, referencing a
 specific table.getReferencesTo in interface Table<R extends Record>O - The other table's record typeother - The other table of the foreign key relationshipFOREIGN KEY's towards an other table.
         This is never null.protected static final <R extends Record,T> TableField<R,T> createField(java.lang.String name, DataType<T> type, Table<R> table)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected static final <R extends Record,T> TableField<R,T> createField(java.lang.String name, DataType<T> type, Table<R> table, java.lang.String comment)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected static final <R extends Record,T,U> TableField<R,U> createField(java.lang.String name, DataType<T> type, Table<R> table, java.lang.String comment, Converter<T,U> converter)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected static final <R extends Record,T,U> TableField<R,U> createField(java.lang.String name, DataType<T> type, Table<R> table, java.lang.String comment, Binding<T,U> binding)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected static final <R extends Record,T,X,U> TableField<R,U> createField(java.lang.String name, DataType<T> type, Table<R> table, java.lang.String comment, Converter<X,U> converter, Binding<T,X> binding)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected final <T> TableField<R,T> createField(java.lang.String name, DataType<T> type)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected final <T> TableField<R,T> createField(java.lang.String name, DataType<T> type, java.lang.String comment)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected final <T,U> TableField<R,U> createField(java.lang.String name, DataType<T> type, java.lang.String comment, Converter<T,U> converter)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected final <T,U> TableField<R,U> createField(java.lang.String name, DataType<T> type, java.lang.String comment, Binding<T,U> binding)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldprotected final <T,X,U> TableField<R,U> createField(java.lang.String name, DataType<T> type, java.lang.String comment, Converter<X,U> converter, Binding<T,X> binding)
TableField objects that
 are linked to this table.name - The name of the field (case-sensitive!)type - The data type of the fieldpublic final Table<R> useIndex(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndex("MY_INDEX")
       .fetch();
 
useIndex in interface Table<R extends Record>public final Table<R> useIndexForJoin(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForJoin("MY_INDEX")
       .fetch();
 
useIndexForJoin in interface Table<R extends Record>public final Table<R> useIndexForOrderBy(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForOrderBy("MY_INDEX")
       .fetch();
 
useIndexForOrderBy in interface Table<R extends Record>public final Table<R> useIndexForGroupBy(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForGroupBy("MY_INDEX")
       .fetch();
 
useIndexForGroupBy in interface Table<R extends Record>public final Table<R> ignoreIndex(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndex("MY_INDEX")
       .fetch();
 
ignoreIndex in interface Table<R extends Record>public final Table<R> ignoreIndexForJoin(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForJoin("MY_INDEX")
       .fetch();
 
ignoreIndexForJoin in interface Table<R extends Record>public final Table<R> ignoreIndexForOrderBy(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForOrderBy("MY_INDEX")
       .fetch();
 
ignoreIndexForOrderBy in interface Table<R extends Record>public final Table<R> ignoreIndexForGroupBy(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForGroupBy("MY_INDEX")
       .fetch();
 
ignoreIndexForGroupBy in interface Table<R extends Record>public final Table<R> forceIndex(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndex("MY_INDEX")
       .fetch();
 
forceIndex in interface Table<R extends Record>public final Table<R> forceIndexForJoin(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForJoin("MY_INDEX")
       .fetch();
 
forceIndexForJoin in interface Table<R extends Record>public final Table<R> forceIndexForOrderBy(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForOrderBy("MY_INDEX")
       .fetch();
 
forceIndexForOrderBy in interface Table<R extends Record>public final Table<R> forceIndexForGroupBy(java.lang.String... indexes)
TableExample:
 
 create.select()
       .from(BOOK.as("b").useIndexForGroupBy("MY_INDEX")
       .fetch();
 
forceIndexForGroupBy in interface Table<R extends Record>public final Table<R> with(java.lang.String hint)
TableThis 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.ORACLE style hints, see
 SelectFromStep.hint(String) and SelectQuery.addHint(String)
with in interface Table<R extends Record>SelectFromStep.hint(String), 
SelectQuery.addHint(String)public final PivotForStep pivot(Field<?>... aggregateFunctions)
TableTABLE reference from this table, pivoting it
 into another form.
 This has been observed to work with
SQLDialect.ORACLE11G upwardsSQLDialect.SQLSERVER (not yet officially supported)public final PivotForStep pivot(java.util.Collection<? extends Field<?>> aggregateFunctions)
TableTABLE reference from this table, pivoting it
 into another form.
 
 For more details, see Table.pivot(Field...)
pivot in interface Table<R extends Record>aggregateFunctions - The aggregate functions used for pivoting.PIVOT expressionTable.pivot(Field...)public final VersionsBetweenAndStep<R,java.lang.Number> versionsBetweenScn(java.lang.Number scn)
TableSQLDialect.ORACLE flashback versions query clause from
 this table.versionsBetweenScn in interface Table<R extends Record>public final VersionsBetweenAndStep<R,java.lang.Number> versionsBetweenScn(Field<? extends java.lang.Number> scn)
TableSQLDialect.ORACLE flashback versions query clause from
 this table.versionsBetweenScn in interface Table<R extends Record>public final VersionsBetweenAndStep<R,java.lang.Number> versionsBetweenScnMinvalue()
TableSQLDialect.ORACLE flashback versions query clause from
 this table.versionsBetweenScnMinvalue in interface Table<R extends Record>public final VersionsBetweenAndStep<R,java.sql.Timestamp> versionsBetweenTimestamp(java.sql.Timestamp timestamp)
TableSQLDialect.ORACLE flashback versions query clause from
 this table.versionsBetweenTimestamp in interface Table<R extends Record>public final VersionsBetweenAndStep<R,java.sql.Timestamp> versionsBetweenTimestamp(Field<java.sql.Timestamp> timestamp)
TableSQLDialect.ORACLE flashback versions query clause from
 this table.versionsBetweenTimestamp in interface Table<R extends Record>public final VersionsBetweenAndStep<R,java.sql.Timestamp> versionsBetweenTimestampMinvalue()
TableSQLDialect.ORACLE flashback versions query clause from
 this table.versionsBetweenTimestampMinvalue in interface Table<R extends Record>public final Table<R> asOfScn(java.lang.Number scn)
TableSQLDialect.ORACLE flashback query clause from this
 table.public final Table<R> asOfScn(Field<? extends java.lang.Number> scn)
TableSQLDialect.ORACLE flashback query clause from this
 table.public final Table<R> asOfTimestamp(java.sql.Timestamp timestamp)
TableSQLDialect.ORACLE flashback query clause from this
 table.asOfTimestamp in interface Table<R extends Record>public final Table<R> asOfTimestamp(Field<java.sql.Timestamp> timestamp)
TableSQLDialect.ORACLE flashback query clause from this
 table.asOfTimestamp in interface Table<R extends Record>public final DivideByOnStep divideBy(Table<?> divisor)
TableTABLE reference 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(...) and
 returning(...) clauses.
 
For more information about relational division and some nice, real-life examples, see
This has been observed to work with all dialects
public final TableOptionalOnStep join(TableLike<?> table, JoinType type)
TableJoinType
 
 Depending on the JoinType, a subsequent
 TableOnStep.on(Condition...) or
 TableOnStep.using(Field...) clause is required. If it is required
 but omitted, a DSL.trueCondition(), i.e. 1 = 1
 condition will be rendered
public final TableOnStep join(TableLike<?> table)
TableINNER JOIN a table to this table.public final TableOnStep join(java.lang.String sql)
TableINNER JOIN a 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!
join in interface Table<R extends Record>DSL.table(String)public final TableOnStep join(java.lang.String sql, java.lang.Object... bindings)
TableINNER JOIN a 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!
join in interface Table<R extends Record>DSL.table(String, Object...)public final TableOnStep join(java.lang.String sql, QueryPart... parts)
TableINNER JOIN a 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!
join in interface Table<R extends Record>DSL.table(String, QueryPart...)public final TablePartitionByStep leftOuterJoin(TableLike<?> table)
TableLEFT OUTER JOIN a table to this table.leftOuterJoin in interface Table<R extends Record>public final TablePartitionByStep leftOuterJoin(java.lang.String sql)
TableLEFT OUTER JOIN a 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!
leftOuterJoin in interface Table<R extends Record>DSL.table(String)public final TablePartitionByStep leftOuterJoin(java.lang.String sql, java.lang.Object... bindings)
TableLEFT OUTER JOIN a 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!
leftOuterJoin in interface Table<R extends Record>DSL.table(String, Object...)public final TablePartitionByStep leftOuterJoin(java.lang.String sql, QueryPart... parts)
TableLEFT OUTER JOIN a 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!
leftOuterJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final TablePartitionByStep rightOuterJoin(TableLike<?> table)
TableRIGHT OUTER JOIN a table to this table.
 This is only possible where the underlying RDBMS supports it
rightOuterJoin in interface Table<R extends Record>public final TablePartitionByStep rightOuterJoin(java.lang.String sql)
TableRIGHT OUTER JOIN a 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!
rightOuterJoin in interface Table<R extends Record>DSL.table(String)public final TablePartitionByStep rightOuterJoin(java.lang.String sql, java.lang.Object... bindings)
TableRIGHT OUTER JOIN a 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!
rightOuterJoin in interface Table<R extends Record>DSL.table(String, Object...)public final TablePartitionByStep rightOuterJoin(java.lang.String sql, QueryPart... parts)
TableRIGHT OUTER JOIN a 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!
rightOuterJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final TableOnStep fullOuterJoin(TableLike<?> table)
TableFULL OUTER JOIN a table to this table.
 This is only possible where the underlying RDBMS supports it
fullOuterJoin in interface Table<R extends Record>public final TableOnStep fullOuterJoin(java.lang.String sql)
TableFULL OUTER JOIN a 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!
fullOuterJoin in interface Table<R extends Record>DSL.table(String)public final TableOnStep fullOuterJoin(java.lang.String sql, java.lang.Object... bindings)
TableFULL OUTER JOIN a 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!
fullOuterJoin in interface Table<R extends Record>DSL.table(String, Object...)public final TableOnStep fullOuterJoin(java.lang.String sql, QueryPart... parts)
TableFULL OUTER JOIN a 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!
fullOuterJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final Table<Record> crossJoin(TableLike<?> table)
TableCROSS JOIN a table to this table.
 
 If this syntax is unavailable, it is simulated with a regular
 INNER JOIN. The following two constructs are equivalent:
 
 A cross join B
 A join B on 1 = 1
 
public final Table<Record> crossJoin(java.lang.String sql)
TableCROSS JOIN a table to this table.
 
 If this syntax is unavailable, it is simulated 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!
crossJoin in interface Table<R extends Record>DSL.table(String)public final Table<Record> crossJoin(java.lang.String sql, java.lang.Object... bindings)
TableCROSS JOIN a table to this table.
 
 If this syntax is unavailable, it is simulated 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!
crossJoin in interface Table<R extends Record>DSL.table(String, Object...)public final Table<Record> crossJoin(java.lang.String sql, QueryPart... parts)
TableCROSS JOIN a table to this table.
 
 If this syntax is unavailable, it is simulated 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!
crossJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final Table<Record> naturalJoin(TableLike<?> table)
TableNATURAL JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate this behaviour using the information provided in this query.
naturalJoin in interface Table<R extends Record>public final Table<Record> naturalJoin(java.lang.String sql)
TableNATURAL JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalJoin in interface Table<R extends Record>DSL.table(String)public final Table<Record> naturalJoin(java.lang.String sql, java.lang.Object... bindings)
TableNATURAL JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalJoin in interface Table<R extends Record>DSL.table(String, Object...)public final Table<Record> naturalJoin(java.lang.String sql, QueryPart... parts)
TableNATURAL JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final Table<Record> naturalLeftOuterJoin(TableLike<?> table)
TableNATURAL LEFT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate this behaviour using the information provided in this query.
naturalLeftOuterJoin in interface Table<R extends Record>public final Table<Record> naturalLeftOuterJoin(java.lang.String sql)
TableNATURAL LEFT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalLeftOuterJoin in interface Table<R extends Record>DSL.table(String)public final Table<Record> naturalLeftOuterJoin(java.lang.String sql, java.lang.Object... bindings)
TableNATURAL LEFT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalLeftOuterJoin in interface Table<R extends Record>DSL.table(String, Object...)public final Table<Record> naturalLeftOuterJoin(java.lang.String sql, QueryPart... parts)
TableNATURAL LEFT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalLeftOuterJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final Table<Record> naturalRightOuterJoin(TableLike<?> table)
TableNATURAL RIGHT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate this behaviour using the information provided in this query.
naturalRightOuterJoin in interface Table<R extends Record>public final Table<Record> naturalRightOuterJoin(java.lang.String sql)
TableNATURAL RIGHT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalRightOuterJoin in interface Table<R extends Record>DSL.table(String)public final Table<Record> naturalRightOuterJoin(java.lang.String sql, java.lang.Object... bindings)
TableNATURAL RIGHT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalRightOuterJoin in interface Table<R extends Record>DSL.table(String, Object...)public final Table<Record> naturalRightOuterJoin(java.lang.String sql, QueryPart... parts)
TableNATURAL RIGHT OUTER JOIN a table to this table.
 If this is not supported by your RDBMS, then jOOQ will try to simulate 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!
naturalRightOuterJoin in interface Table<R extends Record>DSL.table(String, QueryPart...)public final Table<Record> crossApply(TableLike<?> table)
TableCROSS APPLY a table to this table.crossApply in interface Table<R extends Record>public final Table<Record> crossApply(java.lang.String sql)
TableCROSS APPLY a 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!
crossApply in interface Table<R extends Record>DSL.table(String)public final Table<Record> crossApply(java.lang.String sql, java.lang.Object... bindings)
TableCROSS APPLY a 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!
crossApply in interface Table<R extends Record>DSL.table(String, Object...)public final Table<Record> crossApply(java.lang.String sql, QueryPart... parts)
TableCROSS APPLY a 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!
crossApply in interface Table<R extends Record>DSL.table(String, QueryPart...)public final Table<Record> outerApply(TableLike<?> table)
TableOUTER APPLY a table to this table.outerApply in interface Table<R extends Record>public final Table<Record> outerApply(java.lang.String sql)
TableOUTER APPLY a 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!
outerApply in interface Table<R extends Record>DSL.table(String)public final Table<Record> outerApply(java.lang.String sql, java.lang.Object... bindings)
TableOUTER APPLY a 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!
outerApply in interface Table<R extends Record>DSL.table(String, Object...)public final Table<Record> outerApply(java.lang.String sql, QueryPart... parts)
TableOUTER APPLY a 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!
outerApply in interface Table<R extends Record>DSL.table(String, QueryPart...)public int hashCode()
QueryPartQueryPart.
 
 In general, QueryPart hash codes are the same as the hash
 codes generated from QueryPart.toString(). This guarantees consistent
 behaviour with QueryPart.equals(Object)
 
 Some QueryPart implementations may choose to override this
 behaviour for improved performance, as QueryPart.toString() is an
 expensive operation, if called many times.
@Deprecated public void toSQL(RenderContext ctx)
QueryPartInternalQueryPart to a SQL string contained in
 context.sql(). The context will contain
 additional information about how to render this QueryPart,
 e.g. whether this QueryPart should be rendered as a
 declaration or reference, whether this QueryPart's contained
 bind variables should be inlined or replaced by '?', etc.toSQL in interface QueryPartInternal@Deprecated public void bind(BindContext ctx) throws DataAccessException
QueryPartInternalQueryPart to a PreparedStatement
 This method is for JOOQ INTERNAL USE only. Do not reference directly
bind in interface QueryPartInternalctx - The context holding the next bind index and other information
            for variable bindingDataAccessException - If something went wrong while binding a
             variablepublic boolean declaresFields()
declaresFields in interface QueryPartInternalpublic boolean declaresWindows()
declaresWindows in interface QueryPartInternalpublic boolean declaresCTE()
declaresCTE in interface QueryPartInternalpublic java.lang.String toString()
QueryPartQueryPart
 
 For improved debugging, this renders a SQL string of this
 QueryPart with inlined bind variables. If you wish to gain
 more control over the concrete SQL rendering of this
 QueryPart, use DSLContext.renderContext() to obtain a
 configurable render context for SQL rendering.
protected final DSLContext create()
protected final DSLContext create(Configuration configuration)
protected final DSLContext create(Context<?> ctx)
protected final DataAccessException translate(java.lang.String sql, java.sql.SQLException e)
Copyright © 2015. All Rights Reserved.