# Copyright 2015 - 2019 The Cockroach Authors. All rights reserved. # Copyright Materialize, Inc. and contributors. All rights reserved. # # Use of this software is governed by the Business Source License # included in the LICENSE file at the root of this repository. # # As of the Change Date specified in that file, in accordance with # the Business Source License, use of this software will be governed # by the Apache License, Version 2.0. # # This file is derived from the logic test suite in CockroachDB. The # original file was retrieved on June 10, 2019 from: # # https://github.com/cockroachdb/cockroach/blob/d2f7fbf5dd1fc1a099bbad790a2e1f7c60a66cc3/pkg/sql/logictest/testdata/logic_test/exec_window # # The original source code is subject to the terms of the Apache # 2.0 license, a copy of which can be found in the LICENSE file at the # root of this repository. # not supported yet halt mode cockroach statement ok CREATE TABLE t (a INT, b STRING, PRIMARY KEY (b,a)) statement ok INSERT INTO t VALUES (0, 'a'), (1, 'a'), (0, 'b'), (1, 'b') # We sort the output on all queries to get deterministic results. query ITI SELECT a, b, row_number() OVER () FROM t ORDER BY b, a ---- 0 a 1 1 a 2 0 b 3 1 b 4 query ITI SELECT a, b, row_number() OVER (ORDER BY a, b) FROM t ORDER BY b, a ---- 0 a 1 1 a 3 0 b 2 1 b 4 query ITI SELECT a, b, row_number() OVER (PARTITION BY a) FROM t ORDER BY b, a ---- 0 a 1 1 a 1 0 b 2 1 b 2 query ITI SELECT a, b, row_number() OVER (PARTITION BY a, b) FROM t ORDER BY b, a ---- 0 a 1 1 a 1 0 b 1 1 b 1 query ITI SELECT a, b, rank() OVER () FROM t ORDER BY b, a ---- 0 a 1 1 a 1 0 b 1 1 b 1 query ITI SELECT a, b, rank() OVER (ORDER BY a) FROM t ORDER BY b, a ---- 0 a 1 1 a 3 0 b 1 1 b 3 query ITI SELECT a, b, rank() OVER (PARTITION BY a ORDER BY b) FROM t ORDER BY b, a ---- 0 a 1 1 a 1 0 b 2 1 b 2 query ITI SELECT a, b, dense_rank() OVER () FROM t ORDER BY b, a ---- 0 a 1 1 a 1 0 b 1 1 b 1 query ITI SELECT a, b, dense_rank() OVER (ORDER BY a) FROM t ORDER BY b, a ---- 0 a 1 1 a 2 0 b 1 1 b 2 query ITI SELECT a, b, dense_rank() OVER (PARTITION BY a ORDER BY b) FROM t ORDER BY b, a ---- 0 a 1 1 a 1 0 b 2 1 b 2