Top Fields Constructors Methods
org.jooq.impl

pack-priv final Class DataChangeDeltaTable<R extends org.jooq.Record>

extends AbstractTable<R extends Record>
implements AutoAlias<Table<R extends Record>>, QOM.DataChangeDeltaTable<R extends Record>
Class Inheritance
All Implemented Interfaces
org.jooq.impl.QOM.DataChangeDeltaTable, org.jooq.Table, org.jooq.SelectField, org.jooq.Typed, org.jooq.QueryPart, java.io.Serializable, org.jooq.Named, org.jooq.SelectFieldOrAsterisk, org.jooq.GroupField, org.jooq.RecordQualifier, org.jooq.Fields, org.jooq.Qualified, org.jooq.TableLike, org.jooq.impl.AutoAlias, org.jooq.QueryPartInternal
Static Imports
org.jooq.SQLDialect.H2, .SQLDialect.POSTGRES, .SQLDialect.YUGABYTEDB, org.jooq.impl.DSL.name, .DSL.resultQuery, .Keywords.K_FINAL, .Keywords.K_NEW, .Keywords.K_OLD, .Keywords.K_RETURNING, .Keywords.K_TABLE, .Tools.abstractDMLQuery, .Tools.increment, .Tools.SimpleDataKey.DATA_RENDERING_DATA_CHANGE_DELTA_TABLE, .Tools.SimpleDataKey.DATA_TOP_LEVEL_CTE

Author
Lukas Eder

Field Summary

Modifier and TypeField and Description
private final Name
private final Set<SQLDialect>
private final DMLQuery<R>
private final QOM.ResultOption
private final Table<R>

Constructor Summary

AccessConstructor and Description
pack-priv
private
DataChangeDeltaTable(QOM.ResultOption resultOption, DMLQuery<R> query, Table<R> table)

private
DataChangeDeltaTable(QOM.ResultOption resultOption, DMLQuery<R> query, Table<R> table, Name alias)

Method Summary

Modifier and TypeMethod and Description
public final DMLQuery<R>
public final QOM.ResultOption
public final void
accept(Context<?> ctx)

Implements org.jooq.QueryPartInternal.accept.

This QueryPart can accept a Context object in order to render a SQL string or to bind its variables.
private final void
private final void
public Table<R>
as(Name
The alias name
as
)

Overrides org.jooq.impl.AbstractTable.as.

Implements org.jooq.Table.as.

Create an alias for this table.
public Table<R>
as(Name
The alias name
as
,
Name...
The field aliases. Excess aliases are ignored, missing aliases will be substituted by this table's field names.
fieldAliases
)

Overrides org.jooq.impl.AbstractTable.as.

Implements org.jooq.Table.as.

Create an alias for this table and its fields.
public final Table<R>
autoAlias(Context<?> ctx, Table<R> t)

Implements org.jooq.impl.AutoAlias.autoAlias.

Create the aliased table expression or null if no auto-alias is required.
pack-priv final FieldsImpl<R>
fields0()

Implements abstract org.jooq.impl.AbstractTable.fields0.

Subclasses should override this method to provide the set of fields contained in the concrete table implementation.
public final Class<? extends R>
getRecordType()

Implements org.jooq.RecordQualifier.getRecordType.

The record type produced by this UDT or Table.
private final boolean
private static final <R extends Record> Table<R>
table(DMLQuery<R> query)

Inherited from org.jooq.impl.AbstractTable:
$alias$aliased$dataType$schemaasasasasasasasasasasasasasasasMultisetasMultisetasMultisetasMultisetasTableasTableasTableasTableasTableasTableasTableasTableasTableasTableasTableasTableasteriskclausesconvertconvertconvertconvertFromconvertFromconvertToconvertTocreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateFieldcreateField0createField0createField0createField0crossApplycrossApplycrossApplycrossApplycrossApplycrossApplycrossJoincrossJoincrossJoincrossJoincrossJoincrossJoindivideByeqequalfieldsfieldsRowforceIndexforceIndexForGroupByforceIndexForJoinforceIndexForOrderByfromfullJoinfullJoinfullJoinfullJoinfullJoinfullJoinfullOuterJoinfullOuterJoinfullOuterJoinfullOuterJoinfullOuterJoinfullOuterJoingetBindinggetCataloggetChecksgetConvertergetDataTypegetDataTypegetIdentitygetIndexesgetKeysgetOptionsgetPackagegetPrimaryKeygetRecordTimestampgetRecordVersiongetReferencesgetReferencesFromgetReferencesTogetSchemagetTableTypegetTypegetUniqueKeysignoreIndexignoreIndexForGroupByignoreIndexForJoinignoreIndexForOrderByinnerJoininnerJoininnerJoininnerJoininnerJoininnerJoinjoinjoinjoinjoinjoinjoinjoinleftAntiJoinleftJoinleftJoinleftJoinleftJoinleftJoinleftJoinleftOuterJoinleftOuterJoinleftOuterJoinleftOuterJoinleftOuterJoinleftOuterJoinleftSemiJoinnaturalFullOuterJoinnaturalFullOuterJoinnaturalFullOuterJoinnaturalFullOuterJoinnaturalFullOuterJoinnaturalFullOuterJoinnaturalJoinnaturalJoinnaturalJoinnaturalJoinnaturalJoinnaturalJoinnaturalLeftOuterJoinnaturalLeftOuterJoinnaturalLeftOuterJoinnaturalLeftOuterJoinnaturalLeftOuterJoinnaturalLeftOuterJoinnaturalRightOuterJoinnaturalRightOuterJoinnaturalRightOuterJoinnaturalRightOuterJoinnaturalRightOuterJoinnaturalRightOuterJoinnenewRecordnotEqualouterApplyouterApplyouterApplyouterApplyouterApplyouterApplyrecordTyperightJoinrightJoinrightJoinrightJoinrightJoinrightJoinrightOuterJoinrightOuterJoinrightOuterJoinrightOuterJoinrightOuterJoinrightOuterJoinrowidstraightJoinstraightJoinstraightJoinstraightJoinstraightJoinstraightJointfuseIndexuseIndexForGroupByuseIndexForJoinuseIndexForOrderBywherewherewherewherewherewherewherewherewhereExistswhereNotExistswithOrdinality

Field Detail

aliasback to summary
private final Name alias
EMULATE_USING_CTEback to summary
private final Set<SQLDialect> EMULATE_USING_CTE
queryback to summary
private final DMLQuery<R> query
resultOptionback to summary
private final QOM.ResultOption resultOption
tableback to summary
private final Table<R> table

Constructor Detail

DataChangeDeltaTableback to summary
pack-priv DataChangeDeltaTable(QOM.ResultOption resultOption, DMLQuery<R> query)
DataChangeDeltaTableback to summary
private DataChangeDeltaTable(QOM.ResultOption resultOption, DMLQuery<R> query, Table<R> table)
DataChangeDeltaTableback to summary
private DataChangeDeltaTable(QOM.ResultOption resultOption, DMLQuery<R> query, Table<R> table, Name alias)

Method Detail

$queryback to summary
public final DMLQuery<R> $query()

Implements org.jooq.impl.QOM.DataChangeDeltaTable.$query.

Annotations
@Override
$resultOptionback to summary
public final QOM.ResultOption $resultOption()

Implements org.jooq.impl.QOM.DataChangeDeltaTable.$resultOption.

Annotations
@Override
acceptback to summary
public final void accept(Context<?> ctx)

Implements org.jooq.QueryPartInternal.accept.

Doc from org.jooq.QueryPartInternal.accept.

This QueryPart can accept a Context object in order to render a SQL string or to bind its variables.

Annotations
@Override
acceptCteback to summary
private final void acceptCte(Context<?> ctx)
acceptNativeback to summary
private final void acceptNative(Context<?> ctx)
asback to summary
public Table<R> as(Name as)

Overrides org.jooq.impl.AbstractTable.as.

Implements org.jooq.Table.as.

Doc from org.jooq.Table.as.

Create an alias for this table.

Note that the case-sensitivity of the returned table depends on Settings#getRenderQuotedNames() and the Name. By default, table aliases are quoted, and thus case-sensitive in many SQL dialects - use DSL#unquotedName(String...) for case-insensitive aliases.

If the argument Name#getName() is qualified, then the Name#last() part will be used.

This method works both to alias the table as well as alias the table in its SelectField form via the SelectField#as(String) override. In order to alias only the projected table expression, use DSL#field(SelectField) to wrap this table into a Field

Parameters
as:Name

The alias name

Returns:Table<R>

The table alias

Annotations
@Override
asback to summary
public Table<R> as(Name as, Name... fieldAliases)

Overrides org.jooq.impl.AbstractTable.as.

Implements org.jooq.Table.as.

Doc from org.jooq.Table.as.

Create an alias for this table and its fields.

Note that the case-sensitivity of the returned table depends on Settings#getRenderQuotedNames() and the Name. By default, table aliases are quoted, and thus case-sensitive in many SQL dialects - use DSL#unquotedName(String...) for case-insensitive aliases.

If the argument Name#getName() is qualified, then the Name#last() part will be used.

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
Parameters
as:Name

The alias name

fieldAliases:Name[]

The field aliases. Excess aliases are ignored, missing aliases will be substituted by this table's field names.

Returns:Table<R>

The table alias

Annotations
@Override
autoAliasback to summary
public final Table<R> autoAlias(Context<?> ctx, Table<R> t)

Implements org.jooq.impl.AutoAlias.autoAlias.

Doc from org.jooq.impl.AutoAlias.autoAlias.

Create the aliased table expression or null if no auto-alias is required.

Annotations
@Override
fields0back to summary
pack-priv final FieldsImpl<R> fields0()

Implements abstract org.jooq.impl.AbstractTable.fields0.

Doc from org.jooq.impl.AbstractTable.fields0.

Subclasses should override this method to provide the set of fields contained in the concrete table implementation. For example, a TableAlias contains aliased fields of its AliasProvider table.

Annotations
@SuppressWarnings:unchecked
@Override
getRecordTypeback to summary
public final Class<? extends R> getRecordType()

Implements org.jooq.RecordQualifier.getRecordType.

Doc from org.jooq.RecordQualifier.getRecordType.

The record type produced by this UDT or Table.

Annotations
@Override
requiresWorkaroundFor12925back to summary
private final boolean requiresWorkaroundFor12925(Context<?> ctx)
tableback to summary
private static final <R extends Record> Table<R> table(DMLQuery<R> query)
Annotations
@SuppressWarnings:rawtypes, unchecked