RowNumber implements WindowFunction
Interfaces
Methods
- __construct() : mixed
- children() : array<int, FunctionTree>
- Every operand of this node that is an expression, in constructor order.
- describe() : null|Description
- deterministic() : bool
- True when this node and every node in children() produce the same value for the same input row.
- fromDescription() : static
- over() : static
- Returns a copy bound to $window. Never mutates $this.
- resolved() : bool
- True when this node and every node in children() can answer returns().
- returns() : Type<string|int, mixed>
- NOT NULL - every row of a partition has a row number
- toString() : string
- values() : array<int, mixed>
- One value per row of $partition, which is sorted by the window's ORDER BY.
- window() : Window
- withChildren() : static
- A copy of this node with $children in place of children(): same count, same order, same per-element narrowing. Never mutates $this.
Methods
__construct()
public
__construct([Window|null $window = null ]) : mixed
Parameters
- $window : Window|null = null
children()
Every operand of this node that is an expression, in constructor order.
public
children() : array<int, FunctionTree>
Return values
array<int, FunctionTree>describe()
public
describe() : null|Description
Return values
null|Description —null when this instance cannot cross a process boundary (a live client, a custom collaborator)
deterministic()
True when this node and every node in children() produce the same value for the same input row.
public
deterministic() : bool
False for a generator (now(), uuid, a random string): a caller that evaluates the tree once per FILE or per partition instead of once per row must refuse a non-deterministic one.
Return values
boolfromDescription()
public
static fromDescription(array<string|int, mixed> $data, Rebuild $rebuild) : static
Parameters
- $data : array<string|int, mixed>
- $rebuild : Rebuild
Return values
staticover()
Returns a copy bound to $window. Never mutates $this.
public
over(Window $window) : static
Parameters
- $window : Window
Return values
staticresolved()
True when this node and every node in children() can answer returns().
public
resolved() : bool
Return values
boolreturns()
NOT NULL - every row of a partition has a row number
public
returns() : Type<string|int, mixed>
Return values
Type<string|int, mixed>toString()
public
toString() : string
Return values
stringvalues()
One value per row of $partition, which is sorted by the window's ORDER BY.
public
values(Rows $partition, Backend $backend) : array<int, mixed>
Parameters
Return values
array<int, mixed>window()
public
window() : Window
Return values
WindowwithChildren()
A copy of this node with $children in place of children(): same count, same order, same per-element narrowing. Never mutates $this.
public
withChildren(array<int, FunctionTree> $children) : static
Parameters
- $children : array<int, FunctionTree>