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());