Skip to main content

ProjectNode

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

Summary

Maps input rows to output rows (column selection, renaming, expression evaluation).

Members

Constructors

ProjectNode(IQueryPlanNode input, IReadOnlyList<ProjectColumn> outputColumns)

ProjectNode(IQueryPlanNode input, IReadOnlyList<ProjectColumn> outputColumns)

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

Methods

ExecuteAsync

IAsyncEnumerable<QueryRow> ExecuteAsync(QueryPlanContext context, CancellationToken cancellationToken)

Execute this node, producing rows.

Properties

Children

IReadOnlyList<IQueryPlanNode> Children { get; }

Child nodes (inputs to this operator).

Description

string Description { get; }

Human-readable description for EXPLAIN output.

EstimatedRows

long EstimatedRows { get; }

Estimated row count (for cost-based decisions). -1 if unknown.

Input

IQueryPlanNode Input { get; }

The input node providing source rows.

OutputColumns

IReadOnlyList<ProjectColumn> OutputColumns { get; }

The output column projections.