pub struct Unique { /* private fields */ }Expand description
A transform that removes duplicate rows based on specified columns.
§Example
ⓘ
use alimentar::Unique;
// Keep only unique rows based on all columns
let unique = Unique::all();
// Keep only unique rows based on specific columns
let unique = Unique::by(vec!["user_id", "date"]);
// Keep first occurrence (default) or last
let unique = Unique::by(vec!["id"]).keep_first();
let unique = Unique::by(vec!["id"]).keep_last();Implementations§
Source§impl Unique
impl Unique
Sourcepub fn by<S: Into<String>>(columns: impl IntoIterator<Item = S>) -> Self
pub fn by<S: Into<String>>(columns: impl IntoIterator<Item = S>) -> Self
Creates a Unique transform that considers specific columns.
Sourcepub fn keep_first(self) -> Self
pub fn keep_first(self) -> Self
Keep the first occurrence of duplicates (default).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Unique
impl RefUnwindSafe for Unique
impl Send for Unique
impl Sync for Unique
impl Unpin for Unique
impl UnsafeUnpin for Unique
impl UnwindSafe for Unique
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.