Table of Contents

Enum AggregateFilterStyle

Namespace
NextORM.Core
Assembly
nextorm.core.dll

How a provider attaches a filter to an aggregate. The style is one concept — a predicate over the rows an aggregate sees — rendered differently by each provider family. A dialect opts into filtering by returning anything other than None from AggregateFilterStyle.

public enum AggregateFilterStyle
Extension Methods

Fields

AnsiFilter = 1

The provider renders the standard ANSI FILTER (WHERE predicate) clause after the aggregate, for example sum(id) filter (where id > 10) (PostgreSQL, SQLite).

IfCombinator = 2

The provider renders the filter as the ClickHouse -If combinator, for example sumIf(id, id > 10) or countIf(id > 10) (ClickHouse). The combinator takes the aggregate's value arguments followed by the predicate; the predicate comes last.

None = 0

The provider cannot filter an aggregate. Filtering overloads such as SqlFunctions.Sql.count(Expression<Func<bool>>) are rejected with NotSupportedException. This is the safe default (MySQL/MariaDB, SQL Server).