Module org.jooq
Package org.jooq

Interface Field<T>

Type Parameters:
T - The field type
All Superinterfaces:
FieldOrConstraint, FieldOrRow, GroupField, Named, OrderField<T>, QueryPart, SelectField<T>, SelectFieldOrAsterisk, Serializable, Typed<T>
All Known Subinterfaces:
AggregateFilterStep<T>, AggregateFunction<T>, ArrayAggOrderByStep<T>, CaseConditionStep<T>, CaseWhenStep<V,​T>, GroupConcatOrderByStep, GroupConcatSeparatorStep, JSONArrayAggNullStep<T>, JSONArrayAggOrderByStep<J>, JSONArrayAggReturningStep<T>, JSONArrayNullStep<T>, JSONArrayReturningStep<T>, JSONObjectAggNullStep<T>, JSONObjectAggReturningStep<T>, JSONObjectNullStep<T>, JSONObjectReturningStep<T>, JSONValueOnStep<J>, JSONValueReturningStep<T>, Param<T>, Parameter<T>, ParamOrVariable<T>, QOM.Abs<T>, QOM.Acos, QOM.AnyValue<T>, QOM.Array<T>, QOM.ArrayAgg<T>, QOM.ArrayGet<T>, QOM.ArrayQuery<T>, QOM.Ascii, QOM.Asin, QOM.Atan, QOM.Atan2, QOM.Avg, QOM.BitAnd<T>, QOM.BitAndAgg<T>, QOM.BitCount, QOM.BitLength, QOM.BitNand<T>, QOM.BitNor<T>, QOM.BitNot<T>, QOM.BitOr<T>, QOM.BitOrAgg<T>, QOM.BitXNor<T>, QOM.BitXor<T>, QOM.BitXorAgg<T>, QOM.BoolAnd, QOM.BoolOr, QOM.Cardinality, QOM.Cast<T>, QOM.Ceil<T>, QOM.CharLength, QOM.Choose<T>, QOM.Chr, QOM.Coalesce<T>, QOM.Coerce<T>, QOM.Collated, QOM.Collect<T,​A>, QOM.Concat, QOM.ConditionAsField, QOM.ConnectByIsCycle, QOM.ConnectByIsLeaf, QOM.ConnectByRoot<T>, QOM.Convert<T>, QOM.Corr, QOM.Cos, QOM.Cosh, QOM.Cot, QOM.Coth, QOM.Count, QOM.CountTable, QOM.CovarPop, QOM.CovarSamp, QOM.CumeDist, QOM.CurrentCatalog, QOM.CurrentDate<T>, QOM.CurrentSchema, QOM.CurrentTime<T>, QOM.CurrentTimestamp<T>, QOM.CurrentUser, QOM.DateAdd<T>, QOM.Default<T>, QOM.Degrees, QOM.DenseRank, QOM.Digits, QOM.Euler, QOM.Exp, QOM.Extract, QOM.FieldAlias<T>, QOM.FieldFunction<T>, QOM.FirstValue<T>, QOM.Floor<T>, QOM.Function<T>, QOM.Greatest<T>, QOM.Iif<T>, QOM.Inline<T>, QOM.JSONArray<T>, QOM.JSONArrayAgg<J>, QOM.JSONObject<T>, QOM.JSONObjectAgg<J>, QOM.Lag<T>, QOM.LastValue<T>, QOM.Lead<T>, QOM.Least<T>, QOM.Left, QOM.Level, QOM.Log, QOM.Log10, QOM.Lower, QOM.Lpad, QOM.Ltrim, QOM.Max<T>, QOM.Md5, QOM.Median, QOM.Min<T>, QOM.Mod<T>, QOM.Mode<T>, QOM.Multiset<R>, QOM.MultisetAgg<R>, QOM.Neg<T>, QOM.NotField, QOM.NthValue<T>, QOM.Ntile, QOM.Nullif<T>, QOM.Nvl<T>, QOM.Nvl2<T>, QOM.OctetLength, QOM.Overlay, QOM.PercentRank, QOM.Pi, QOM.Plus<T>, QOM.Position, QOM.Power, QOM.Prior<T>, QOM.Product, QOM.QualifiedRowid, QOM.Radians, QOM.Rand, QOM.Rank, QOM.RatioToReport, QOM.RegrAvgx, QOM.RegrAvgy, QOM.RegrCount, QOM.RegrIntercept, QOM.RegrR2, QOM.RegrSlope, QOM.RegrSxx, QOM.RegrSxy, QOM.RegrSyy, QOM.Repeat, QOM.Replace, QOM.Reverse, QOM.Right, QOM.Round<T>, QOM.RowField<R>, QOM.Rownum, QOM.RowNumber, QOM.Rpad, QOM.Rtrim, QOM.ScalarSubquery<T>, QOM.Shl<T>, QOM.Shr<T>, QOM.Sign, QOM.Sin, QOM.Sinh, QOM.Space, QOM.SplitPart, QOM.Sqrt, QOM.Square<T>, QOM.StddevPop, QOM.StddevSamp, QOM.Substring, QOM.SubstringIndex, QOM.Sum, QOM.SysConnectByPath, QOM.Tan, QOM.Tanh, QOM.Tau, QOM.TimestampDiff<T>, QOM.ToChar, QOM.ToDate, QOM.ToHex, QOM.ToTimestamp, QOM.Translate, QOM.Trim, QOM.Trunc<T>, QOM.Upper, QOM.Uuid, QOM.Val<T>, QOM.VarPop, QOM.VarSamp, QOM.WidthBucket<T>, QOM.WindowFunction<T>, QOM.XMLAgg, QOM.XMLComment, QOM.XMLConcat, QOM.XMLDocument, QOM.XMLElement, QOM.XMLForest, QOM.XMLParse, QOM.XMLPi, QOM.XMLQuery, QOM.XMLSerialize<T>, TableField<R,​T>, UDTField<R,​T>, Variable<T>, WindowBeforeOverStep<T>, WindowExcludeStep<T>, WindowFinalStep<T>, WindowOrderByStep<T>, WindowPartitionByStep<T>, WindowRowsStep<T>, XMLAggOrderByStep<T>
All Known Implementing Classes:
CustomField

public interface Field<T> extends SelectField<T>, GroupField, OrderField<T>, FieldOrRow, FieldOrConstraint
A column expression.

Column expressions or fields can be used in a variety of SQL statements and clauses, including (non-exhaustive list):

Example:

 // Assuming import static org.jooq.impl.DSL.*;

 using(configuration)
    .select(ACTOR.LAST_NAME)  // Field reference
    .from(ACTOR)
    .groupBy(ACTOR.LAST_NAME) // Field reference
    .orderBy(ACTOR.LAST_NAME) // Field reference
    .fetch();
 

Instances can be created using a variety of ways, including:

Author:
Lukas Eder