Class: Join
Defined in: packages/core/src/plan/operators/tuple/join.ts:80
A join with explicit predicates; extends CartesianProduct by filtering rows
with conditions and supporting outer-join semantics via leftOuter/rightOuter.
Extends
Constructors
Constructor
new Join(
lang,left,right,conditions):Join
Defined in: packages/core/src/plan/operators/tuple/join.ts:86
Parameters
| Parameter | Type | Description |
|---|---|---|
lang | Lowercase<string> | - |
left | PlanTupleOperator | - |
right | PlanTupleOperator | - |
conditions | Calculation[] | Join predicates; all must hold for a pair of rows to be included. |
Returns
Join
Overrides
Properties
conditions
conditions:
Calculation[]
Defined in: packages/core/src/plan/operators/tuple/join.ts:91
Join predicates; all must hold for a pair of rows to be included.
lang
lang:
Lowercase<string>
Defined in: packages/core/src/plan/visitor.ts:42
PlanOperator.lang
Inherited from
left
left:
PlanTupleOperator
Defined in: packages/core/src/plan/operators/tuple/join.ts:21
Left input tuple stream.
Inherited from
leftOuter
leftOuter:
boolean=false
Defined in: packages/core/src/plan/operators/tuple/join.ts:82
When true, unmatched rows from left are emitted with null-filled right columns.
parent?
optionalparent?:PlanOperator
Defined in: packages/core/src/plan/visitor.ts:44
PlanOperator.parent
Inherited from
right
right:
PlanTupleOperator
Defined in: packages/core/src/plan/operators/tuple/join.ts:23
Right input tuple stream.
Inherited from
rightOuter
rightOuter:
boolean=false
Defined in: packages/core/src/plan/operators/tuple/join.ts:84
When true, unmatched rows from right are emitted with null-filled left columns.
schema
schema:
ASTIdentifier[]
Defined in: packages/core/src/plan/visitor.ts:38
Ordered list of attribute identifiers produced by this operator.
Inherited from
schemaSet
schemaSet:
IdSet
Defined in: packages/core/src/plan/visitor.ts:40
Trie-backed set of the same paths as schema; used for O(k) membership tests.
Inherited from
validateSingleValue
validateSingleValue:
boolean=false
Defined in: packages/core/src/plan/operators/tuple/join.ts:16
if true, the right is not allowed to return multiple values per one left value
Inherited from
CartesianProduct.validateSingleValue
Methods
accept()
accept<
Ret,Arg>(visitors,arg?):Ret
Defined in: packages/core/src/plan/operators/tuple/join.ts:98
PlanOperator.accept
Type Parameters
| Type Parameter |
|---|
Ret |
Arg |
Parameters
| Parameter | Type |
|---|---|
visitors | Record<string, PlanVisitor<Ret, Arg>> |
arg? | Arg |
Returns
Ret
Overrides
addToSchema()
addToSchema(
item):void
Defined in: packages/core/src/plan/visitor.ts:57
will preserve object references
Parameters
| Parameter | Type |
|---|---|
item | IdSet | ASTIdentifier | ASTIdentifier[] |
Returns
void
Inherited from
clearSchema()
clearSchema():
void
Defined in: packages/core/src/plan/visitor.ts:102
will preserve object references
Returns
void
Inherited from
clone()
clone():
Join
Defined in: packages/core/src/plan/operators/tuple/join.ts:126
PlanOperator.clone
Returns
Join
Overrides
getChildren()
getChildren():
PlanOperator[]
Defined in: packages/core/src/plan/operators/tuple/join.ts:122
PlanOperator.getChildren
Returns
Overrides
getDependencies()
getDependencies():
IdSet
Defined in: packages/core/src/plan/visitor.ts:113
PlanOperator.getDependencies
Returns
Inherited from
CartesianProduct.getDependencies
removeFromSchema()
removeFromSchema(
item):boolean
Defined in: packages/core/src/plan/visitor.ts:80
will preserve object references
Parameters
| Parameter | Type |
|---|---|
item | IdSet | ASTIdentifier | ASTIdentifier[] |
Returns
boolean
Inherited from
CartesianProduct.removeFromSchema
replaceChild()
replaceChild(
current,replacement):void
Defined in: packages/core/src/plan/operators/tuple/join.ts:105
PlanOperator.replaceChild
Parameters
| Parameter | Type |
|---|---|
current | PlanOperator |
replacement | PlanOperator |
Returns
void