1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-11-27 08:21:15 +03:00
Files
mariadb-columnstore-engine/mtr/basic/t/mcs162_win_frame_stddev.test
mariadb-RomanNavrotskiy 73b4147cf3 move mtr suites here
2021-01-31 01:38:31 +02:00

47 lines
2.9 KiB
Plaintext

#
# Test STDDEV() Window Frame
# Author: Bharath, bharath.bokka@mariadb.com
#
-- source ../include/have_columnstore.inc
--disable_warnings
DROP DATABASE IF EXISTS mcs162_db;
--enable_warnings
CREATE DATABASE mcs162_db;
USE mcs162_db;
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
SELECT a, b, STDDEV(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b DESC RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b DESC RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY a ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY b ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY a ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY b ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) stddev FROM t1;
SELECT a, b, STDDEV(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) stddev FROM t1;
--error ER_RANGE_FRAME_NEEDS_SIMPLE_ORDERBY
SELECT a, b, STDDEV(b) OVER(PARTITION BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) stddev FROM t1;
--error ER_WRONG_TYPE_FOR_RANGE_FRAME
SELECT a, b, STDDEV(b) OVER(ORDER BY a RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) stddev FROM t1;
# Clean UP
DROP DATABASE mcs162_db;