#[non_exhaustive]pub enum Operation {
Show 15 variants
Where(Condition),
Select(Vec<SelectExpr>),
Sort {
field: String,
descending: bool,
},
Limit(usize),
Count {
field: Option<String>,
},
Sum {
field: String,
},
Avg {
field: String,
},
Min {
field: String,
},
Max {
field: String,
},
Distinct {
field: String,
},
GroupBy {
fields: Vec<String>,
having: Option<Condition>,
aggregates: Vec<GroupAggregate>,
},
Unique,
UniqueBy {
field: String,
},
AddField {
name: String,
expr: Expr,
},
MapField {
name: String,
expr: Expr,
},
}Expand description
Pipeline operation applied after path navigation (e.g., | where ..., | sort ...).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Where(Condition)
where 필터링
Select(Vec<SelectExpr>)
select 컬럼 선택: select name, upper(name), round(price, 2)
Sort
sort 정렬: sort age (오름차순) / sort age desc (내림차순)
Limit(usize)
limit 결과 제한: limit 10
Count
count 전체 카운트 / count field 비null 카운트
Sum
sum field 숫자 필드 합계
Avg
avg field 숫자 필드 평균
Min
min field 최솟값
Max
max field 최댓값
Distinct
distinct field 고유값 목록
GroupBy
group_by field1, field2 그룹별 집계
집계 연산: group_by category | select category, count, sum_price
Unique
전체 레코드 동일성 기준 중복 제거
UniqueBy
특정 필드 기준 중복 제거 (첫 번째 등장 레코드 유지)
AddField
새 필드 추가 (computed column): --add-field 'total = amount * quantity'
MapField
기존 필드 값 변환: --map 'name = upper(name)'
Trait Implementations§
impl StructuralPartialEq for Operation
Auto Trait Implementations§
impl Freeze for Operation
impl RefUnwindSafe for Operation
impl Send for Operation
impl Sync for Operation
impl Unpin for Operation
impl UnsafeUnpin for Operation
impl UnwindSafe for Operation
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more