pub struct AggregateRel {
pub common: Option<RelCommon>,
pub input: Option<Box<Rel>>,
pub groupings: Vec<Grouping>,
pub measures: Vec<Measure>,
pub grouping_expressions: Vec<Expression>,
pub advanced_extension: Option<AdvancedExtension>,
}Expand description
The relational operator representing a GROUP BY Aggregate
Fields§
§common: Option<RelCommon>§input: Option<Box<Rel>>Input of the aggregation
groupings: Vec<Grouping>A list of zero or more grouping sets that the aggregation measures should be calculated for. There must be at least one grouping set if there are no measures (but it can be the empty grouping set).
measures: Vec<Measure>A list of one or more aggregate expressions along with an optional filter. Required if there are no groupings.
grouping_expressions: Vec<Expression>A list of zero or more grouping expressions that grouping sets (i.e.,
Grouping messages in the groupings field) can reference. Each
expression in this list must be referred to by at least one
Grouping.expression_references.
advanced_extension: Option<AdvancedExtension>Trait Implementations§
Source§impl Clone for AggregateRel
impl Clone for AggregateRel
Source§fn clone(&self) -> AggregateRel
fn clone(&self) -> AggregateRel
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AggregateRel
impl Debug for AggregateRel
Source§impl Default for AggregateRel
impl Default for AggregateRel
Source§impl InputNode for AggregateRel
impl InputNode for AggregateRel
Source§fn type_to_node() -> Node
fn type_to_node() -> Node
Creates an empty output node for a protobuf datum of this type. Read more
Source§fn data_to_node(&self) -> Node
fn data_to_node(&self) -> Node
Creates an empty output node for a protobuf datum with this value.
Source§fn oneof_variant(&self) -> Option<&'static str>
fn oneof_variant(&self) -> Option<&'static str>
Returns the name of the selected variant of a oneof field, if this
is a rust enum used to represent a oneof field.
Source§fn parse_unknown(&self, y: &mut Context<'_>) -> bool
fn parse_unknown(&self, y: &mut Context<'_>) -> bool
Complete the subtrees of this datum in output that have not already
been parsed using UnknownField nodes. Returns whether any such nodes
were added.
Source§impl Message for AggregateRel
impl Message for AggregateRel
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Returns the encoded length of the message without a length delimiter.
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message to a buffer. Read more
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message to a newly allocated buffer.
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Encodes the message with a length-delimiter to a buffer. Read more
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Encodes the message with a length-delimiter to a newly allocated buffer.
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes an instance of the message from a buffer. Read more
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Decodes a length-delimited instance of the message from the buffer.
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes an instance of the message from a buffer, and merges it into
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
Decodes a length-delimited instance of the message from buffer, and
merges it into
self.Source§impl PartialEq for AggregateRel
impl PartialEq for AggregateRel
Source§impl ProtoMessage for AggregateRel
impl ProtoMessage for AggregateRel
Source§fn proto_message_type() -> &'static str
fn proto_message_type() -> &'static str
Returns the protobuf type name for messages of this type.
impl StructuralPartialEq for AggregateRel
Auto Trait Implementations§
impl Freeze for AggregateRel
impl RefUnwindSafe for AggregateRel
impl Send for AggregateRel
impl Sync for AggregateRel
impl Unpin for AggregateRel
impl UnwindSafe for AggregateRel
Blanket Implementations§
Source§impl<T> AnyExt for T
impl<T> AnyExt for T
Source§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
Attempts to downcast this to
T behind referenceSource§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
Attempts to downcast this to
T behind mutable referenceSource§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
Attempts to downcast this to
T behind Rc pointerSource§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
Attempts to downcast this to
T behind Arc pointerSource§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, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
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 more