Skip to main content

WindowDefinition

  • Namespace: PPDS.Dataverse.Query.Planning.Nodes
  • Assembly: PPDS.Dataverse
  • Kind: Class

Summary​

Defines a single window function to compute within a ClientWindowNode. Uses compiled delegates instead of AST types.

Members​

Constructors​

WindowDefinition(string outputColumnName, string functionName, CompiledScalarExpression operand, IReadOnlyList<CompiledScalarExpression> partitionBy, IReadOnlyList<CompiledOrderByItem> orderBy, bool isCountStar)​

WindowDefinition(string outputColumnName, string functionName, CompiledScalarExpression operand, IReadOnlyList<CompiledScalarExpression> partitionBy, IReadOnlyList<CompiledOrderByItem> orderBy, bool isCountStar)

Initializes a new instance of the PPDS.Dataverse.Query.Planning.Nodes.WindowDefinition class.

Properties​

FunctionName​

string FunctionName { get; }

The window function name (ROW_NUMBER, RANK, DENSE_RANK, SUM, COUNT, AVG, MIN, MAX).

IsCountStar​

bool IsCountStar { get; }

True when this is COUNT(*) with star instead of a column expression.

Operand​

CompiledScalarExpression Operand { get; }

Optional compiled operand for aggregate window functions (e.g., SUM(revenue)). Null for ranking functions.

OrderBy​

IReadOnlyList<CompiledOrderByItem> OrderBy { get; }

Compiled ORDER BY items within the window. Null or empty if not specified.

OutputColumnName​

string OutputColumnName { get; }

The output column name for this window function's result.

PartitionBy​

IReadOnlyList<CompiledScalarExpression> PartitionBy { get; }

Compiled PARTITION BY expressions (groups rows into partitions). Null or empty if not specified.