-
- Type Parameters:
R- The record type
- All Superinterfaces:
QueryPart,Serializable
- All Known Subinterfaces:
CommonTableExpression<R>,JSONTableColumnPathStep,JSONTableColumnsStep,Select<R>,SelectConditionStep<R>,SelectConnectByAfterStartWithConditionStep<R>,SelectConnectByConditionStep<R>,SelectConnectByStep<R>,SelectCorrelatedSubqueryStep<R>,SelectDistinctOnStep<R>,SelectFinalStep<R>,SelectForJSONCommonDirectivesStep<R>,SelectForStep<R>,SelectForUpdateOfStep<R>,SelectForUpdateStep<R>,SelectForUpdateWaitStep<R>,SelectForXMLCommonDirectivesStep<R>,SelectForXMLPathDirectivesStep<R>,SelectForXMLRawDirectivesStep<R>,SelectFromStep<R>,SelectGroupByStep<R>,SelectHavingConditionStep<R>,SelectHavingStep<R>,SelectIntoStep<R>,SelectJoinStep<R>,SelectLimitAfterOffsetStep<R>,SelectLimitPercentAfterOffsetStep<R>,SelectLimitPercentStep<R>,SelectLimitStep<R>,SelectOffsetStep<R>,SelectOnConditionStep<R>,SelectOptionalOnStep<R>,SelectOptionStep<R>,SelectOrderByStep<R>,SelectQualifyConditionStep<R>,SelectQualifyStep<R>,SelectQuery<R>,SelectSeekLimitStep<R>,SelectSeekStep1<R,T1>,SelectSeekStep10<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10>,SelectSeekStep11<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11>,SelectSeekStep12<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12>,SelectSeekStep13<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13>,SelectSeekStep14<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14>,SelectSeekStep15<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15>,SelectSeekStep16<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16>,SelectSeekStep17<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17>,SelectSeekStep18<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18>,SelectSeekStep19<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19>,SelectSeekStep2<R,T1,T2>,SelectSeekStep20<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20>,SelectSeekStep21<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21>,SelectSeekStep22<R,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22>,SelectSeekStep3<R,T1,T2,T3>,SelectSeekStep4<R,T1,T2,T3,T4>,SelectSeekStep5<R,T1,T2,T3,T4,T5>,SelectSeekStep6<R,T1,T2,T3,T4,T5,T6>,SelectSeekStep7<R,T1,T2,T3,T4,T5,T6,T7>,SelectSeekStep8<R,T1,T2,T3,T4,T5,T6,T7,T8>,SelectSeekStep9<R,T1,T2,T3,T4,T5,T6,T7,T8,T9>,SelectSeekStepN<R>,SelectSelectStep<R>,SelectStartWithStep<R>,SelectUnionStep<R>,SelectWhereStep<R>,SelectWindowStep<R>,SelectWithTiesAfterOffsetStep<R>,SelectWithTiesStep<R>,Table<R>,TableOnConditionStep<R>,TableOptionalOnStep<R>,XMLTableColumnPathStep,XMLTableColumnsStep
- All Known Implementing Classes:
CustomTable,TableImpl
public interface TableLike<R extends Record> extends QueryPart
An object that can behave like a table (a table-like object).Instances of this type cannot be created directly, only of its subtypes.
- Author:
- Lukas Eder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description @NotNull Table<R>asTable()The underlying table representation of this object.@NotNull Table<R>asTable(String alias)The underlying aliased table representation of this object.@NotNull Table<R>asTable(String alias, String... fieldAliases)The underlying aliased table representation of this object.@NotNull Table<R>asTable(String alias, BiFunction<? super Field<?>,? super Integer,? extends String> aliasFunction)Deprecated.- 3.14.0 - [#10156] - These methods will be removed without replacement from a future jOOQ.@NotNull Table<R>asTable(String alias, Function<? super Field<?>,? extends String> aliasFunction)Deprecated.- 3.14.0 - [#10156] - These methods will be removed without replacement from a future jOOQ.@NotNull Table<R>asTable(Name alias)The underlying aliased table representation of this object.@NotNull Table<R>asTable(Name alias, Name... fieldAliases)The underlying aliased table representation of this object.@NotNull Table<R>asTable(Table<?> alias)The underlying aliased table representation of this object.@NotNull Table<R>asTable(Table<?> alias, Field<?>... fieldAliases)The underlying aliased table representation of this object.@Nullable Field<?>field(int index)Get a specific field from this table, if this table knows its field references.<T> @Nullable 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> @Nullable 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.@Nullable Field<?>field(String name)Get a specific field from this table, if this table knows its field references.<T> @Nullable 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> @Nullable 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> @Nullable Field<T>field(Field<T> field)Get a specific field from this table, if this table knows its field references.@Nullable Field<?>field(Name name)Get a specific field from this table, if this table knows its field references.<T> @Nullable 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> @Nullable 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.@NotNull Field<?>[]fields()Get all fields from this table, if this table knows its field references, or an empty array otherwise.@NotNull Field<?>[]fields(int... fieldIndexes)Get all fields from this table, providing some field indexes, if this table knows its field references.@NotNull Field<?>[]fields(String... fieldNames)Get all fields from this table, providing some field names, if this table knows its field references.@NotNull Field<?>[]fields(Field<?>... fields)Get all fields from this table, providing some fields, if this table knows its field references.@NotNull Field<?>[]fields(Name... fieldNames)Get all fields from this table, providing some field names, if this table knows its field references.@NotNull RowfieldsRow()Get this table's fields as aRow, if this table knows its field references.@NotNull Stream<Field<?>>fieldStream()Get this table's fields as aStream, if this table knows its field references.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.
-
-
-
Method Detail
-
fieldsRow
@NotNull @NotNull Row fieldsRow()
Get this table's fields as aRow, if this table knows its field references.
-
fieldStream
@NotNull @NotNull Stream<Field<?>> fieldStream()
Get this table's fields as aStream, if this table knows its field references.
-
field
@Nullable <T> @Nullable Field<T> field(Field<T> field)
Get 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.
- See Also:
Row.field(Field)
-
field
@Nullable @Nullable Field<?> field(String name)
Get a specific field from this table, if this table knows its field references.- See Also:
Row.field(String)
-
field
@Nullable <T> @Nullable 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.- See Also:
Row.field(String, Class)
-
field
@Nullable <T> @Nullable 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.- See Also:
Row.field(String, DataType)
-
field
@Nullable @Nullable Field<?> field(Name name)
Get a specific field from this table, if this table knows its field references.- See Also:
Row.field(Name)
-
field
@Nullable <T> @Nullable 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.- See Also:
Row.field(Name, Class)
-
field
@Nullable <T> @Nullable 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.- See Also:
Row.field(Name, DataType)
-
field
@Nullable @Nullable Field<?> field(int index)
Get a specific field from this table, if this table knows its field references.- See Also:
Row.field(int)
-
field
@Nullable <T> @Nullable 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.- See Also:
Row.field(int, Class)
-
field
@Nullable <T> @Nullable 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.- See Also:
Row.field(int, DataType)
-
fields
@NotNull @NotNull Field<?>[] fields()
Get all fields from this table, if this table knows its field references, or an empty array otherwise.- See Also:
Row.fields()
-
fields
@NotNull @NotNull Field<?>[] fields(Field<?>... fields)
Get all fields from this table, providing some fields, if this table knows its field references.- Returns:
- All available fields
- See Also:
Row.fields(Field...)
-
fields
@NotNull @NotNull Field<?>[] fields(String... fieldNames)
Get all fields from this table, providing some field names, if this table knows its field references.- Returns:
- All available fields
- See Also:
Row.fields(String...)
-
fields
@NotNull @NotNull Field<?>[] fields(Name... fieldNames)
Get all fields from this table, providing some field names, if this table knows its field references.- Returns:
- All available fields
- See Also:
Row.fields(Name...)
-
fields
@NotNull @NotNull Field<?>[] fields(int... fieldIndexes)
Get all fields from this table, providing some field indexes, if this table knows its field references.- Returns:
- All available fields
- See Also:
Row.fields(int...)
-
indexOf
int indexOf(Field<?> field)
Get a field's index from this table.- Parameters:
field- The field to look for- Returns:
- The field's index or
-1if the field is not contained in this table.
-
indexOf
int indexOf(String fieldName)
Get a field's index from this table.- Parameters:
fieldName- The field name to look for- Returns:
- The field's index or
-1if the field is not contained in this table.
-
indexOf
int indexOf(Name fieldName)
Get a field's index from this table.- Parameters:
fieldName- The field name to look for- Returns:
- The field's index or
-1if the field is not contained in this table
-
asTable
@NotNull @Support @NotNull 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 ...
-
asTable
@NotNull @Support @NotNull Table<R> asTable(String alias)
The underlying aliased table representation of this object.- See Also:
Table.as(String)
-
asTable
@NotNull @Support @NotNull Table<R> asTable(String alias, String... fieldAliases)
The underlying aliased table representation of this object.- See Also:
Table.as(String, String...)
-
asTable
@NotNull @Support @NotNull Table<R> asTable(Name alias)
The underlying aliased table representation of this object.- See Also:
Table.as(Name)
-
asTable
@NotNull @Support @NotNull Table<R> asTable(Name alias, Name... fieldAliases)
The underlying aliased table representation of this object.- See Also:
Table.as(String, String...)
-
asTable
@NotNull @Support @NotNull Table<R> asTable(Table<?> alias)
The underlying aliased table representation of this object.- See Also:
Table.as(Name)
-
asTable
@NotNull @Support @NotNull Table<R> asTable(Table<?> alias, Field<?>... fieldAliases)
The underlying aliased table representation of this object.- See Also:
Table.as(String, String...)
-
asTable
@Deprecated @NotNull @Support @NotNull Table<R> asTable(String alias, Function<? super Field<?>,? extends String> aliasFunction)
Deprecated.- 3.14.0 - [#10156] - These methods will be removed without replacement from a future jOOQ. They offer convenience that is unidiomatic for jOOQ's DSL, without offering functionality that would not be possible otherwise - yet they add complexity in jOOQ's internals.The underlying aliased table representation of this object.- See Also:
Table.as(String, Function)
-
asTable
@Deprecated @NotNull @Support @NotNull Table<R> asTable(String alias, BiFunction<? super Field<?>,? super Integer,? extends String> aliasFunction)
Deprecated.- 3.14.0 - [#10156] - These methods will be removed without replacement from a future jOOQ. They offer convenience that is unidiomatic for jOOQ's DSL, without offering functionality that would not be possible otherwise - yet they add complexity in jOOQ's internals.The underlying aliased table representation of this object.- See Also:
Table.as(String, BiFunction)
-
-