GroupBy

public final class GroupBy: Query, HavingRouter, OrderByRouter, LimitRouter

A GroupBy represents the GROUP BY clause to group the query result. The GROUP BY clause is normally used with aggregate functions (AVG, COUNT, MAX, MIN, SUM) to aggregate the group of the values.

  • Creates and chain a Having object for filtering the aggregated values from the the GROUP BY clause.

    Declaration

    Swift

    public func having(_ expression: ExpressionProtocol) -> Having

    Parameters

    expression

    The expression.

    Return Value

    The Having object that represents the HAVING clause of the query.

  • Creates and chains an OrderBy object for specifying the orderings of the query result.

    Declaration

    Swift

    public func orderBy(_ orderings: OrderingProtocol...) -> OrderBy

    Parameters

    orderings

    The Ordering objects.

    Return Value

    The OrderBy object that represents the ORDER BY clause of the query.

  • Creates and chains an OrderBy object for specifying the orderings of the query result.

    Declaration

    Swift

    public func orderBy(_ orderings: [OrderingProtocol]) -> OrderBy

    Parameters

    orderings

    The Ordering objects.

    Return Value

    The OrderBy object that represents the ORDER BY clause of the query.

  • Creates and chains a Limit object to limit the number query results.

    Declaration

    Swift

    public func limit(_ limit: ExpressionProtocol) -> Limit

    Parameters

    limit

    The limit expression.

    Return Value

    The Limit object that represents the LIMIT clause of the query.

  • Creates and chains a Limit object to skip the returned results for the given offset position and to limit the number of results to not more than the given limit value.

    Declaration

    Swift

    public func limit(_ limit: ExpressionProtocol, offset: ExpressionProtocol?) -> Limit

    Return Value

    The Limit object that represents the LIMIT clause of the query.