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.