Skip to content

WindowSpec

Defined in: window.ts:45

Describes how to partition, order, and frame a window for window functions such as row_number, rank, and lag.

Obtain a WindowSpec from the Window factory. Instances are immutable; every builder method returns a new WindowSpec.

import { Window, col } from "@spark-connect-js/core";
import { row_number } from "@spark-connect-js/core/functions";
const spec = Window.partitionBy("country").orderBy(col("score").desc());
const ranked = df.withColumn("rank", row_number().over(spec));

Spark source: Window.scala

new WindowSpec(
partitionSpec?,
orderSpec?,
frameSpec?): WindowSpec;

Defined in: window.ts:53

ParameterTypeDefault value
partitionSpecExpression[][]
orderSpecSortOrder[][]
frameSpec?WindowFrameundefined

WindowSpec

orderBy(...cols): WindowSpec;

Defined in: window.ts:69

Add order-by columns to this window spec.

ParameterType
colsColOrName[]

WindowSpec


partitionBy(...cols): WindowSpec;

Defined in: window.ts:64

Add partition-by columns to this window spec.

ParameterType
colsColOrName[]

WindowSpec


rangeBetween(start, end): WindowSpec;

Defined in: window.ts:83

Set a range-based frame between the given boundaries.

ParameterType
startnumber
endnumber

WindowSpec


rowsBetween(start, end): WindowSpec;

Defined in: window.ts:74

Set a row-based frame between the given boundaries.

ParameterType
startnumber
endnumber

WindowSpec