Emits a partition (PLAN §8.8, §11.6, §11.9) as
<input>->extend(<over>, ~[<aggregates>])->extend(<over>, ~[<ranks and rows>])->extend(<reversed over>, ~[<lasts>]), in the array form (the
engine runs a later filter before a single-form window): an aggregate can't
share an extend with a rank or row function (it fails on the engine), and
Last is First over the reversed window, each extend left out when it has
nothing; then, when the window functions are listed in another order, a
select of every column in the schema's order. No frame is written: SQL's
default (D5). The emitter checks the columns come out as
the node's inferred schema, so a mismatch fails in Cube, not on the engine.
Emits a partition (PLAN §8.8, §11.6, §11.9) as
<input>->extend(<over>, ~[<aggregates>])->extend(<over>, ~[<ranks and rows>])->extend(<reversed over>, ~[<lasts>]), in the array form (the engine runs a later filter before a single-form window): an aggregate can't share an extend with a rank or row function (it fails on the engine), and Last is First over the reversed window, each extend left out when it has nothing; then, when the window functions are listed in another order, aselectof every column in the schema's order. No frame is written: SQL's default (D5). The emitter checks the columns come out as the node's inferred schema, so a mismatch fails in Cube, not on the engine.