-
- All Superinterfaces:
FieldOrRow
,Fields
,QueryPart
,Serializable
- All Known Subinterfaces:
Row1<T1>
,Row10<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10>
,Row11<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11>
,Row12<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12>
,Row13<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13>
,Row14<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14>
,Row15<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15>
,Row16<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16>
,Row17<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17>
,Row18<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18>
,Row19<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19>
,Row2<T1,T2>
,Row20<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20>
,Row21<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21>
,Row22<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22>
,Row3<T1,T2,T3>
,Row4<T1,T2,T3,T4>
,Row5<T1,T2,T3,T4,T5>
,Row6<T1,T2,T3,T4,T5,T6>
,Row7<T1,T2,T3,T4,T5,T6,T7>
,Row8<T1,T2,T3,T4,T5,T6,T7,T8>
,Row9<T1,T2,T3,T4,T5,T6,T7,T8,T9>
,RowN
public interface Row extends Fields, FieldOrRow
A row value expression.Row value expressions are mainly useful for use in predicates, when comparing several values in one go, which can be more elegant than expanding the row value expression predicate in other equivalent syntaxes. This is especially true for non-equality predicates. For instance, the following two predicates are equivalent in SQL:
(A, B) > (X, Y) (A > X) OR (A = X AND B > Y)
Example:
// Assuming import static org.jooq.impl.DSL.*; using(configuration) .select() .from(CUSTOMER) .where(row(CUSTOMER.FIRST_NAME, CUSTOMER.LAST_NAME).in( select(ACTOR.FIRST_NAME, ACTOR.LAST_NAME).from(ACTOR) )) .fetch();
Note: Not all databases support row value expressions, but many row value expression operations can be emulated on all databases. See relevant row value expression method Javadocs for details.
Instances can be created using
DSL.row(Object...)
and overloads.- Author:
- Lukas Eder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description @NotNull Condition
isNotNull()
Check if this row value expression contains noNULL
values.@NotNull Condition
isNull()
Check if this row value expression contains onlyNULL
values.int
size()
Get the degree of this row value expression.
-
-
-
Method Detail
-
size
int size()
Get the degree of this row value expression.
-
isNull
@NotNull @Support @NotNull Condition isNull()
Check if this row value expression contains onlyNULL
values.Row NULL predicates can be emulated in those databases that do not support such predicates natively:
(A, B) IS NULL
is equivalent toA IS NULL AND B IS NULL
-
isNotNull
@NotNull @Support @NotNull Condition isNotNull()
Check if this row value expression contains noNULL
values.Row NOT NULL predicates can be emulated in those databases that do not support such predicates natively:
(A, B) IS NOT NULL
is equivalent toA IS NOT NULL AND B IS NOT NULL
Note that the two following predicates are NOT equivalent:
(A, B) IS NOT NULL
, which is the same as(A IS NOT NULL) AND (B IS NOT NULL)
NOT((A, B) IS NULL)
, which is the same as(A IS NOT NULL) OR (B IS NOT NULL)
-
-