Class IntersectExpression<T>
- java.lang.Object
-
- org.apache.qpid.server.query.engine.parsing.expression.AbstractExpressionNode<T,R>
-
- org.apache.qpid.server.query.engine.parsing.expression.set.AbstractSetExpression<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>>
-
- org.apache.qpid.server.query.engine.parsing.expression.set.IntersectExpression<T>
-
- Type Parameters:
T- Input parameter type
- All Implemented Interfaces:
java.util.function.Function<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>>,Expression<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>>,ExpressionNode<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>>,SetExpression<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>>
public class IntersectExpression<T> extends AbstractSetExpression<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>>
Set INTERSECT expression is used to retain the results of right SELECT statement present in the results of left SELECT statement. Every SELECT statement within INTERSECT must have the same number of columns. The INTERSECT operator selects all values by default. To eliminate duplicates, INTERSECT DISTINCT should be used.
-
-
Field Summary
-
Fields inherited from class org.apache.qpid.server.query.engine.parsing.expression.set.AbstractSetExpression
_distinct
-
Fields inherited from class org.apache.qpid.server.query.engine.parsing.expression.AbstractExpressionNode
_metadata
-
-
Constructor Summary
Constructors Constructor Description IntersectExpression(boolean distinct, ExpressionNode<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>> left, ExpressionNode<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>> right)Constructor initializes children expression list
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>apply(T value)Performs INTERSECT operation on both set expressions-
Methods inherited from class org.apache.qpid.server.query.engine.parsing.expression.set.AbstractSetExpression
getProjections, getSelections
-
Methods inherited from class org.apache.qpid.server.query.engine.parsing.expression.AbstractExpressionNode
containsAggregation, ctx, evaluateChild, getAggregations, getAlias, getChild, getChildren, getParent, isAccessor, isInstantlyEvaluable, setAlias, setParent, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.qpid.server.query.engine.parsing.expression.Expression
andThen
-
Methods inherited from interface org.apache.qpid.server.query.engine.parsing.expression.ExpressionNode
containsAggregation, getAggregations, getAlias, getChildren, getParent, isAccessor, isInstantlyEvaluable, setAlias, setParent
-
-
-
-
Constructor Detail
-
IntersectExpression
public IntersectExpression(boolean distinct, ExpressionNode<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>> left, ExpressionNode<T,java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>>> right)Constructor initializes children expression list- Parameters:
distinct- Distinct flagleft- Left expressionright- Right expression
-
-
Method Detail
-
apply
public java.util.stream.Stream<java.util.Map<java.lang.String,java.lang.Object>> apply(T value)
Performs INTERSECT operation on both set expressions- Parameters:
value- Object to handle- Returns:
- Stream combining entities from both expressions
-
-