# # Test LEAD() Window Function # Author: Bharath, bharath.bokka@mariadb.com # -- source ../include/have_columnstore.inc --disable_warnings DROP DATABASE IF EXISTS mcs128_db; --enable_warnings CREATE DATABASE mcs128_db; USE mcs128_db; CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore; INSERT INTO t1 VALUES ('', NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92); SELECT a, b, LEAD(a) OVER(ORDER BY a) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(ORDER BY b DESC) lead_value FROM t1; SELECT a, b, LEAD(a) OVER(ORDER BY b) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(b, 0) OVER(ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(b, -1) OVER(ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(b, 2) OVER(ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(a) OVER w lead_value FROM t1 WINDOW w AS (ORDER BY a DESC); SELECT a, b, LEAD(b) OVER w lead_value FROM t1 WINDOW w AS (ORDER BY b); SELECT a, b, LEAD(a) OVER(PARTITION BY a ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(a) OVER(PARTITION BY a ORDER BY b DESC) lead_value FROM t1; SELECT a, b, LEAD(a) OVER(PARTITION BY a ORDER BY b ASC) lead_value FROM t1; SELECT a, b, LEAD(a) OVER(PARTITION BY b ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(a) OVER(PARTITION BY b ORDER BY b DESC) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(PARTITION BY a ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(PARTITION BY a ORDER BY b DESC) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(PARTITION BY a ORDER BY b ASC) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(PARTITION BY b ORDER BY a DESC) lead_value FROM t1; SELECT a, b, LEAD(b) OVER(PARTITION BY b ORDER BY b DESC) lead_value FROM t1; --error ER_NO_ORDER_LIST_IN_WINDOW_SPEC SELECT a, b, LEAD(a) OVER(PARTITION BY b) lead_value FROM t1; --error ER_NO_ORDER_LIST_IN_WINDOW_SPEC SELECT a, b, LEAD(a) OVER(PARTITION BY a) lead_value FROM t1; # Clean UP DROP DATABASE mcs128_db;