File tree Expand file tree Collapse file tree 3 files changed +8
-0
lines changed
optd-core/src/operator/relational/logical Expand file tree Collapse file tree 3 files changed +8
-0
lines changed Original file line number Diff line number Diff line change @@ -8,5 +8,8 @@ pub struct Filter<Relation, Scalar> {
8
8
/// The input relation.
9
9
pub child : Relation ,
10
10
/// The filter expression denoting the predicate condition for this filter operation.
11
+ ///
12
+ /// For example, a filter predicate could be `column_a > 42`, or it could be something like
13
+ /// `column_b < 100 AND column_c > 1000`.
11
14
pub predicate : Scalar ,
12
15
}
Original file line number Diff line number Diff line change @@ -13,5 +13,7 @@ pub struct Join<Relation, Scalar> {
13
13
/// The right input relation.
14
14
pub right : Relation ,
15
15
/// The join expression denoting the join condition that links the two input relations.
16
+ ///
17
+ /// For example, a join operation could have a condition on `t1.id = t2.id` (an equijoin).
16
18
pub condition : Scalar ,
17
19
}
Original file line number Diff line number Diff line change @@ -9,5 +9,8 @@ pub struct Scan<Scalar> {
9
9
/// TODO(alexis) Mocked for now.
10
10
pub table_name : String ,
11
11
/// An optional filter expression for predicate pushdown into scan operators.
12
+ ///
13
+ /// For example, a `Filter(Scan(A), column_a < 42)` can be converted into a predicate pushdown
14
+ /// `Scan(A, column < 42)` to prevent having to materialize many tuples.
12
15
pub predicate : Option < Scalar > ,
13
16
}
You can’t perform that action at this time.
0 commit comments