Module org.jooq
Package org.jooq

Interface FieldLike

All Known Subinterfaces:
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>

public interface FieldLike
An object that can behave like a field (a field-like object).

Instances of this type cannot be created directly, only of its subtypes.

Author:
Lukas Eder
  • Method Summary

    Modifier and Type
    Method
    Description
    <T> @NotNull Field<T>
    The underlying field representation of this object.
    <T> @NotNull Field<T>
    asField​(String alias)
    The underlying field representation of this object.
    <T> @NotNull Field<T>
    asField​(Function<? super Field<T>,​? extends String> aliasFunction)
    Deprecated, for removal: This API element is subject to removal in a future version.
    - 3.14.0 - [#10156] - These methods will be removed without replacement from a future jOOQ.
  • Method Details

    • asField

      @NotNull <T> @NotNull Field<T> asField()
      The underlying field representation of this object.

      This method is useful for things like SELECT y.*, (SELECT a FROM x) FROM y

      Returns:
      This result provider as a Field<?> object
    • asField

      @NotNull <T> @NotNull Field<T> asField(String alias)
      The underlying field representation of this object.

      This method is useful for things like SELECT y.*, (SELECT a FROM x) [alias] FROM y

      Note that the case-sensitivity of the returned field depends on Settings.getRenderQuotedNames(). By default, field aliases are quoted, and thus case-sensitive in many SQL dialects!

      Returns:
      This result provider as a Field<?> object
    • asField

      @Deprecated(forRemoval=true, since="3.14") @NotNull @Support <T> @NotNull Field<T> asField(Function<? super Field<T>,​? extends String> aliasFunction)
      Deprecated, for removal: This API element is subject to removal in a future version.
      - 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 field representation of this object.

      This method is useful for things like SELECT y.*, (SELECT a FROM x) [alias] FROM y

      Note that the case-sensitivity of the returned field depends on Settings.getRenderQuotedNames(). By default, field aliases are quoted, and thus case-sensitive in many SQL dialects!

      This works like asField(String), except that field aliases are provided by a function. This is useful, for instance, to prefix all columns with a common prefix (on Table.as(String, Function)):

       MY_TABLE.as("t1", f -> "prefix_" + f.getName());
       

      And then to use the same function also for individual fields:

       MY_TABLE.MY_COLUMN.as(f -> "prefix_" + f.getName());