Skip to content
Reference > Prepare Methods

stack(value)

Definition

Number stack(Number value)

Description

running sum of value from first to row n, inclusive

Parameter Definition

Name Type Description
value Number

Example 1

CREATE TABLE input(symbol String, id int, price double);
INSERT INTO input VALUES ("CAT", 1, 50),("CAT", 2, 54),("CAT", 3, 52),("CAT", 4, 52),("CAT", 5, null),("CAT", 6, 57);
INSERT INTO input VALUES ("IBM", 1, 20),("IBM", 2, 24),("IBM", 3, 22),("IBM", 4, 27),("IBM", 5, null);
CREATE TABLE result AS PREPARE *,stack(price) AS newCol FROM input PARTITION BY symbol;
Table input = SELECT * FROM input;
TABLE result = SELECT * FROM result;

// input = 
// +---------------------+
// |        input        |
// +------+-------+------+
// |symbol|id     |price |
// |String|Integer|Double|
// +------+-------+------+
// |CAT   |1      |50.0  |
// |CAT   |2      |54.0  |
// |CAT   |3      |52.0  |
// |CAT   |4      |52.0  |
// |CAT   |5      !null  |
// |CAT   |6      |57.0  |
// |IBM   |1      |20.0  |
// |IBM   |2      |24.0  |
// |IBM   |3      |22.0  |
// |IBM   |4      |27.0  |
// |IBM   |5      !null  |
// +------+-------+------+
// 
// result = 
// +----------------------------+
// |           result           |
// +------+-------+------+------+
// |symbol|id     |price |newCol|
// |String|Integer|Double|Double|
// +------+-------+------+------+
// |CAT   |1      |50.0  |50.0  |
// |CAT   |2      |54.0  |104.0 |
// |CAT   |3      |52.0  |156.0 |
// |CAT   |4      |52.0  |208.0 |
// |CAT   |5      !null  |208.0 |
// |CAT   |6      |57.0  |265.0 |
// |IBM   |1      |20.0  |20.0  |
// |IBM   |2      |24.0  |44.0  |
// |IBM   |3      |22.0  |66.0  |
// |IBM   |4      |27.0  |93.0  |
// |IBM   |5      !null  |93.0  |
// +------+-------+------+------+
//