Class GroupByLevelController
- java.lang.Object
-
- org.apache.iotdb.db.mpp.plan.analyze.GroupByLevelController
-
public class GroupByLevelController extends java.lang.ObjectThis class is used to control the row number of group by level query. For example, selected series[root.sg.d1.s1, root.sg.d2.s1, root.sg2.d1.s1], level = 1; the result rows will be [root.sg.*.s1, root.sg2.*.s1], sLimit and sOffset will be used to control the result numbers rather than the selected series.
-
-
Constructor Summary
Constructors Constructor Description GroupByLevelController(int[] levels, TypeProvider typeProvider)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcontrol(boolean isCountStar, Expression expression, java.lang.String alias)org.apache.iotdb.commons.path.PartialPathgeneratePartialPathByLevel(boolean isCountStar, org.apache.iotdb.commons.path.PartialPath rawPath, int[] pathLevels)Transform an originalPath to a partial path that satisfies given level.java.lang.StringgetAlias(java.lang.String columnName)java.util.Map<Expression,java.util.Set<Expression>>getGroupedPathMap()java.util.Map<Expression,Expression>getRawPathToGroupedPathMap()
-
-
-
Constructor Detail
-
GroupByLevelController
public GroupByLevelController(int[] levels, TypeProvider typeProvider)
-
-
Method Detail
-
control
public void control(boolean isCountStar, Expression expression, java.lang.String alias)
-
generatePartialPathByLevel
public org.apache.iotdb.commons.path.PartialPath generatePartialPathByLevel(boolean isCountStar, org.apache.iotdb.commons.path.PartialPath rawPath, int[] pathLevels)Transform an originalPath to a partial path that satisfies given level. Path nodes don't satisfy the given level will be replaced by "*" except the sensor level, e.g. generatePartialPathByLevel("root.sg.dh.d1.s1", 2) will return "root.*.dh.*.s1".Especially, if count(*), then the sensor level will be replaced by "*" too.
- Returns:
- result partial path
-
getGroupedPathMap
public java.util.Map<Expression,java.util.Set<Expression>> getGroupedPathMap()
-
getAlias
public java.lang.String getAlias(java.lang.String columnName)
-
getRawPathToGroupedPathMap
public java.util.Map<Expression,Expression> getRawPathToGroupedPathMap()
-
-