Table of Contents

Class WindowFrame

Namespace
NextORM.Core
Assembly
nextorm.core.dll

The optional ROWS/RANGE/GROUPS BETWEEN ... AND ... frame of a window specification, with an optional EXCLUDE. Not every provider can express every unit or an exclusion; the translator rejects an unsupported combination through the dialect capability flags.

public sealed class WindowFrame
Inheritance
WindowFrame
Inherited Members
Extension Methods

Properties

End

Upper (or, for a reversed frame, last written) boundary.

public WindowFrameBound End { get; }

Property Value

WindowFrameBound

Exclusion

The frame exclusion, or null when none was requested (the default EXCLUDE NO OTHERS). A dialect that cannot render an exclusion rejects a frame that sets it (see SupportsWindowFrameExclusion).

public WindowFrameExclusion? Exclusion { get; }

Property Value

WindowFrameExclusion?

RangeUnboundedPrecedingToCurrentRow

range between unbounded preceding and current row.

public static WindowFrame RangeUnboundedPrecedingToCurrentRow { get; }

Property Value

WindowFrame

RowsUnboundedPrecedingToCurrentRow

rows between unbounded preceding and current row, the default running aggregate frame.

public static WindowFrame RowsUnboundedPrecedingToCurrentRow { get; }

Property Value

WindowFrame

Start

Lower (or, for a reversed frame, first written) boundary.

public WindowFrameBound Start { get; }

Property Value

WindowFrameBound

Type

Frame unit.

public WindowFrameType Type { get; }

Property Value

WindowFrameType

Methods

Groups(WindowFrameBound, WindowFrameBound)

A groups between frame with explicit peer-group boundaries.

public static WindowFrame Groups(WindowFrameBound start, WindowFrameBound end)

Parameters

start WindowFrameBound
end WindowFrameBound

Returns

WindowFrame

Groups(int, int)

groups between <preceding> preceding and <following> following.

public static WindowFrame Groups(int preceding, int following)

Parameters

preceding int
following int

Returns

WindowFrame

Range(WindowFrameBound, WindowFrameBound)

A range between frame with explicit boundaries.

public static WindowFrame Range(WindowFrameBound start, WindowFrameBound end)

Parameters

start WindowFrameBound
end WindowFrameBound

Returns

WindowFrame

Rows(WindowFrameBound, WindowFrameBound)

A rows between frame with explicit boundaries.

public static WindowFrame Rows(WindowFrameBound start, WindowFrameBound end)

Parameters

start WindowFrameBound
end WindowFrameBound

Returns

WindowFrame

Rows(int, int)

rows between <preceding> preceding and <following> following.

public static WindowFrame Rows(int preceding, int following)

Parameters

preceding int
following int

Returns

WindowFrame

WithExclusion(WindowFrameExclusion)

Returns a copy of this frame carrying exclusion. Passing NoOthers requests the explicit EXCLUDE NO OTHERS.

public WindowFrame WithExclusion(WindowFrameExclusion exclusion)

Parameters

exclusion WindowFrameExclusion

Returns

WindowFrame