Class ExprNode.OrNode
java.lang.Object
org.apache.drill.exec.store.base.filter.ExprNode
org.apache.drill.exec.store.base.filter.ExprNode.ListNode
org.apache.drill.exec.store.base.filter.ExprNode.OrNode
- Enclosing class:
- ExprNode
Represents a set of OR'ed expressions in Disjunctive Normal
Form (CNF). Or'ed expresssions often cannot be pushed down except in the
special case of a series of expressions on the same column, which can
sometimes be handled as a series of requests, each for a different disjunct.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.drill.exec.store.base.filter.ExprNode
ExprNode.AndNode, ExprNode.ColRelOpConstNode, ExprNode.ColumnTypeNode, ExprNode.ListNode, ExprNode.OrNode, ExprNode.RelOpNode
-
Field Summary
Fields inherited from class org.apache.drill.exec.store.base.filter.ExprNode.ListNode
children
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiondouble
Compute the selectivity of this DNF (OR) clause.
-
Constructor Details
-
OrNode
-
-
Method Details
-
selectivity
public double selectivity()Compute the selectivity of this DNF (OR) clause. Drill assumes the selectivity of = is 0.15. An OR is a series of equal statements, so selectivity is n * 0.15. However, limit total selectivity to 0.9 (that is, if there are more than 6 clauses in the DNF, assume at least some reduction.)- Specified by:
selectivity
in classExprNode
- Returns:
- the estimated selectivity of this DNF clause
-