Package com.illumon.iris.db.v2.updateby
Class UpdateBy
java.lang.Object
com.illumon.iris.db.v2.updateby.UpdateBy
- Direct Known Subclasses:
BucketedUpdateBy
public abstract class UpdateBy extends Object
The core of the
Table.updateBy(UpdateByControl, Collection, MatchPair...) operation.-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classUpdateBy.UpdateTypeThe type of update to be applied. -
Field Summary
Fields Modifier and Type Field Description protected UpdateByControlcontrolprotected IndexfreeRowsprotected ChunkSource.WithPrev<Attributes.Values>[]inputSourcesprotected int[]inputSourceSlotsprotected longmaxInnerIndexprotected UpdateByOperator[]operatorsprotected RedirectionIndexredirectionIndexprotected QueryTablesource -
Constructor Summary
Constructors Modifier Constructor Description protectedUpdateBy(UpdateByOperator[] operators, QueryTable source, RedirectionIndex redirectionIndex, UpdateByControl control) -
Method Summary
Modifier and Type Method Description protected voidprocessUpdateForRedirection(ShiftAwareListener.Update upstream)static TableupdateBy(QueryTable source, Collection<UpdateByClause> clauses, MatchPair[] byColumns, UpdateByControl control)Apply the specified operations to each group of rows in the source table and produce a result table with the same index as the source with each operator applied.
-
Field Details
-
inputSources
-
inputSourceSlots
protected final int[] inputSourceSlots -
operators
-
source
-
redirectionIndex
-
freeRows
-
maxInnerIndex
protected long maxInnerIndex -
control
-
-
Constructor Details
-
UpdateBy
protected UpdateBy(@NotNull UpdateByOperator[] operators, @NotNull QueryTable source, @Nullable RedirectionIndex redirectionIndex, UpdateByControl control)
-
-
Method Details
-
updateBy
public static Table updateBy(@NotNull QueryTable source, @NotNull Collection<UpdateByClause> clauses, @NotNull MatchPair[] byColumns, @NotNull UpdateByControl control)Apply the specified operations to each group of rows in the source table and produce a result table with the same index as the source with each operator applied.- Parameters:
source- the source to apply to.clauses- the operations to apply.byColumns- the columns to group by before applying operations- Returns:
- a new table with the same index as the source with all the operations applied.
-
processUpdateForRedirection
-