You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-29 08:21:15 +03:00
Add tests for window functions
This commit is contained in:
committed by
Leonid Fedorov
parent
14810d87ba
commit
80a2d8e9f5
@ -11,4 +11,14 @@ z CORR(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 0.9898976319320635
|
aaa 0.9898976319320635
|
||||||
bbb 1
|
bbb 1
|
||||||
|
SELECT z, CORR(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z CORR(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 0.9898976319320635
|
||||||
|
aaa 0.9898976319320635
|
||||||
|
aaa 0.9898976319320635
|
||||||
|
aaa 0.9898976319320635
|
||||||
|
bbb 1
|
||||||
|
bbb 1
|
||||||
|
bbb 1
|
||||||
DROP DATABASE mcs192_db;
|
DROP DATABASE mcs192_db;
|
||||||
|
@ -11,4 +11,14 @@ z COVAR_POP(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 44.5
|
aaa 44.5
|
||||||
bbb 26
|
bbb 26
|
||||||
|
SELECT z, COVAR_POP(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z COVAR_POP(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 44.5
|
||||||
|
aaa 44.5
|
||||||
|
aaa 44.5
|
||||||
|
aaa 44.5
|
||||||
|
bbb 26
|
||||||
|
bbb 26
|
||||||
|
bbb 26
|
||||||
DROP DATABASE mcs193_db;
|
DROP DATABASE mcs193_db;
|
||||||
|
@ -11,4 +11,14 @@ z COVAR_SAMP(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 59.333333333333336
|
aaa 59.333333333333336
|
||||||
bbb 39
|
bbb 39
|
||||||
|
SELECT z, COVAR_SAMP(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z COVAR_SAMP(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 59.333333333333336
|
||||||
|
aaa 59.333333333333336
|
||||||
|
aaa 59.333333333333336
|
||||||
|
aaa 59.333333333333336
|
||||||
|
bbb 39
|
||||||
|
bbb 39
|
||||||
|
bbb 39
|
||||||
DROP DATABASE mcs194_db;
|
DROP DATABASE mcs194_db;
|
||||||
|
@ -11,6 +11,16 @@ z REGR_AVGX(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 50.0000
|
aaa 50.0000
|
||||||
bbb 63.0000
|
bbb 63.0000
|
||||||
|
SELECT z, REGR_AVGX(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_AVGX(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 50.0000
|
||||||
|
aaa 50.0000
|
||||||
|
aaa 50.0000
|
||||||
|
aaa 50.0000
|
||||||
|
bbb 63.0000
|
||||||
|
bbb 63.0000
|
||||||
|
bbb 63.0000
|
||||||
SELECT REGR_AVGY(y, x) FROM t1;
|
SELECT REGR_AVGY(y, x) FROM t1;
|
||||||
REGR_AVGY(y, x)
|
REGR_AVGY(y, x)
|
||||||
4.0000
|
4.0000
|
||||||
@ -19,4 +29,14 @@ z REGR_AVGY(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 3.5000
|
aaa 3.5000
|
||||||
bbb 4.6667
|
bbb 4.6667
|
||||||
|
SELECT z, REGR_AVGY(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_AVGY(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 3.5000
|
||||||
|
aaa 3.5000
|
||||||
|
aaa 3.5000
|
||||||
|
aaa 3.5000
|
||||||
|
bbb 4.6667
|
||||||
|
bbb 4.6667
|
||||||
|
bbb 4.6667
|
||||||
DROP DATABASE mcs195_db;
|
DROP DATABASE mcs195_db;
|
||||||
|
@ -11,6 +11,16 @@ z REGR_SXX(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 1902
|
aaa 1902
|
||||||
bbb 702
|
bbb 702
|
||||||
|
SELECT z, REGR_SXX(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_SXX(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 1902
|
||||||
|
aaa 1902
|
||||||
|
aaa 1902
|
||||||
|
aaa 1902
|
||||||
|
bbb 702
|
||||||
|
bbb 702
|
||||||
|
bbb 702
|
||||||
SELECT REGR_SXY(y, x) FROM t1;
|
SELECT REGR_SXY(y, x) FROM t1;
|
||||||
REGR_SXY(y, x)
|
REGR_SXY(y, x)
|
||||||
282
|
282
|
||||||
@ -19,6 +29,16 @@ z REGR_SXY(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 178
|
aaa 178
|
||||||
bbb 78
|
bbb 78
|
||||||
|
SELECT z, REGR_SXY(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_SXY(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 178
|
||||||
|
aaa 178
|
||||||
|
aaa 178
|
||||||
|
aaa 178
|
||||||
|
bbb 78
|
||||||
|
bbb 78
|
||||||
|
bbb 78
|
||||||
SELECT REGR_SYY(y, x) FROM t1;
|
SELECT REGR_SYY(y, x) FROM t1;
|
||||||
REGR_SYY(y, x)
|
REGR_SYY(y, x)
|
||||||
28
|
28
|
||||||
@ -27,4 +47,14 @@ z REGR_SYY(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 17
|
aaa 17
|
||||||
bbb 8.666666666666666
|
bbb 8.666666666666666
|
||||||
|
SELECT z, REGR_SYY(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_SYY(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 17
|
||||||
|
aaa 17
|
||||||
|
aaa 17
|
||||||
|
aaa 17
|
||||||
|
bbb 8.666666666666666
|
||||||
|
bbb 8.666666666666666
|
||||||
|
bbb 8.666666666666666
|
||||||
DROP DATABASE mcs196_db;
|
DROP DATABASE mcs196_db;
|
||||||
|
@ -11,6 +11,16 @@ z REGR_COUNT(y, x)
|
|||||||
NULL 0
|
NULL 0
|
||||||
aaa 4
|
aaa 4
|
||||||
bbb 3
|
bbb 3
|
||||||
|
SELECT z, REGR_COUNT(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_COUNT(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL 0
|
||||||
|
aaa 4
|
||||||
|
aaa 4
|
||||||
|
aaa 4
|
||||||
|
aaa 4
|
||||||
|
bbb 3
|
||||||
|
bbb 3
|
||||||
|
bbb 3
|
||||||
SELECT REGR_COUNT(y) FROM t1;
|
SELECT REGR_COUNT(y) FROM t1;
|
||||||
ERROR HY000: Can't initialize function 'regr_count'; regr_count() requires two arguments
|
ERROR HY000: Can't initialize function 'regr_count'; regr_count() requires two arguments
|
||||||
DROP DATABASE mcs197_db;
|
DROP DATABASE mcs197_db;
|
||||||
|
@ -11,6 +11,16 @@ z REGR_INTERCEPT(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa -1.1792849631966351
|
aaa -1.1792849631966351
|
||||||
bbb -2.3333333333333335
|
bbb -2.3333333333333335
|
||||||
|
SELECT z, REGR_INTERCEPT(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_INTERCEPT(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa -1.1792849631966351
|
||||||
|
aaa -1.1792849631966351
|
||||||
|
aaa -1.1792849631966351
|
||||||
|
aaa -1.1792849631966351
|
||||||
|
bbb -2.3333333333333335
|
||||||
|
bbb -2.3333333333333335
|
||||||
|
bbb -2.3333333333333335
|
||||||
SELECT REGR_INTERCEPT(y) FROM t1;
|
SELECT REGR_INTERCEPT(y) FROM t1;
|
||||||
ERROR HY000: Can't initialize function 'regr_intercept'; regr_intercept() requires two arguments
|
ERROR HY000: Can't initialize function 'regr_intercept'; regr_intercept() requires two arguments
|
||||||
DROP DATABASE mcs198_db;
|
DROP DATABASE mcs198_db;
|
||||||
|
@ -11,6 +11,16 @@ z REGR_R2(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 0.9798973217047071
|
aaa 0.9798973217047071
|
||||||
bbb 1
|
bbb 1
|
||||||
|
SELECT z, REGR_R2(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_R2(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 0.9798973217047071
|
||||||
|
aaa 0.9798973217047071
|
||||||
|
aaa 0.9798973217047071
|
||||||
|
aaa 0.9798973217047071
|
||||||
|
bbb 1
|
||||||
|
bbb 1
|
||||||
|
bbb 1
|
||||||
SELECT REGR_R2(y) FROM t1;
|
SELECT REGR_R2(y) FROM t1;
|
||||||
ERROR HY000: Can't initialize function 'regr_r2'; regr_r2() requires two arguments
|
ERROR HY000: Can't initialize function 'regr_r2'; regr_r2() requires two arguments
|
||||||
DROP DATABASE mcs199_db;
|
DROP DATABASE mcs199_db;
|
||||||
|
@ -11,6 +11,16 @@ z REGR_SLOPE(y, x)
|
|||||||
NULL NULL
|
NULL NULL
|
||||||
aaa 0.0935856992639327
|
aaa 0.0935856992639327
|
||||||
bbb 0.1111111111111111
|
bbb 0.1111111111111111
|
||||||
|
SELECT z, REGR_SLOPE(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
z REGR_SLOPE(y, x) OVER (PARTITION BY z ORDER BY z)
|
||||||
|
NULL NULL
|
||||||
|
aaa 0.0935856992639327
|
||||||
|
aaa 0.0935856992639327
|
||||||
|
aaa 0.0935856992639327
|
||||||
|
aaa 0.0935856992639327
|
||||||
|
bbb 0.1111111111111111
|
||||||
|
bbb 0.1111111111111111
|
||||||
|
bbb 0.1111111111111111
|
||||||
SELECT REGR_SLOPE(y) FROM t1;
|
SELECT REGR_SLOPE(y) FROM t1;
|
||||||
ERROR HY000: Can't initialize function 'regr_slope'; regr_slope() requires two arguments
|
ERROR HY000: Can't initialize function 'regr_slope'; regr_slope() requires two arguments
|
||||||
DROP DATABASE mcs200_db;
|
DROP DATABASE mcs200_db;
|
||||||
|
@ -24,6 +24,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT CORR(y, x) FROM t1;
|
SELECT CORR(y, x) FROM t1;
|
||||||
SELECT z, CORR(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, CORR(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, CORR(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--disable_query_log
|
--disable_query_log
|
||||||
if (!$func_exists)
|
if (!$func_exists)
|
||||||
|
@ -25,6 +25,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT COVAR_POP(y, x) FROM t1;
|
SELECT COVAR_POP(y, x) FROM t1;
|
||||||
SELECT z, COVAR_POP(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, COVAR_POP(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, COVAR_POP(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--disable_query_log
|
--disable_query_log
|
||||||
if (!$func_exists)
|
if (!$func_exists)
|
||||||
|
@ -24,6 +24,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT COVAR_SAMP(y, x) FROM t1;
|
SELECT COVAR_SAMP(y, x) FROM t1;
|
||||||
SELECT z, COVAR_SAMP(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, COVAR_SAMP(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, COVAR_SAMP(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--disable_query_log
|
--disable_query_log
|
||||||
if (!$func_exists)
|
if (!$func_exists)
|
||||||
|
@ -25,9 +25,11 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT REGR_AVGX(y, x) FROM t1;
|
SELECT REGR_AVGX(y, x) FROM t1;
|
||||||
SELECT z, REGR_AVGX(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_AVGX(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_AVGX(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
SELECT REGR_AVGY(y, x) FROM t1;
|
SELECT REGR_AVGY(y, x) FROM t1;
|
||||||
SELECT z, REGR_AVGY(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_AVGY(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_AVGY(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--disable_query_log
|
--disable_query_log
|
||||||
if (!$func_exists)
|
if (!$func_exists)
|
||||||
|
@ -26,12 +26,15 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT REGR_SXX(y, x) FROM t1;
|
SELECT REGR_SXX(y, x) FROM t1;
|
||||||
SELECT z, REGR_SXX(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_SXX(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_SXX(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
SELECT REGR_SXY(y, x) FROM t1;
|
SELECT REGR_SXY(y, x) FROM t1;
|
||||||
SELECT z, REGR_SXY(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_SXY(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_SXY(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
SELECT REGR_SYY(y, x) FROM t1;
|
SELECT REGR_SYY(y, x) FROM t1;
|
||||||
SELECT z, REGR_SYY(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_SYY(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_SYY(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--disable_query_log
|
--disable_query_log
|
||||||
if (!$func_exists)
|
if (!$func_exists)
|
||||||
|
@ -24,6 +24,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT REGR_COUNT(y, x) FROM t1;
|
SELECT REGR_COUNT(y, x) FROM t1;
|
||||||
SELECT z, REGR_COUNT(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_COUNT(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_COUNT(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--error 1123
|
--error 1123
|
||||||
SELECT REGR_COUNT(y) FROM t1;
|
SELECT REGR_COUNT(y) FROM t1;
|
||||||
|
@ -24,6 +24,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT REGR_INTERCEPT(y, x) FROM t1;
|
SELECT REGR_INTERCEPT(y, x) FROM t1;
|
||||||
SELECT z, REGR_INTERCEPT(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_INTERCEPT(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_INTERCEPT(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--error 1123
|
--error 1123
|
||||||
SELECT REGR_INTERCEPT(y) FROM t1;
|
SELECT REGR_INTERCEPT(y) FROM t1;
|
||||||
|
@ -24,7 +24,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT REGR_R2(y, x) FROM t1;
|
SELECT REGR_R2(y, x) FROM t1;
|
||||||
SELECT z, REGR_R2(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_R2(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_R2(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
--error 1123
|
--error 1123
|
||||||
SELECT REGR_R2(y) FROM t1;
|
SELECT REGR_R2(y) FROM t1;
|
||||||
|
|
||||||
|
@ -24,6 +24,7 @@ INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bb
|
|||||||
|
|
||||||
SELECT REGR_SLOPE(y, x) FROM t1;
|
SELECT REGR_SLOPE(y, x) FROM t1;
|
||||||
SELECT z, REGR_SLOPE(y, x) FROM t1 GROUP BY z ORDER BY z;
|
SELECT z, REGR_SLOPE(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||||
|
SELECT z, REGR_SLOPE(y, x) OVER (PARTITION BY z ORDER BY z) FROM t1;
|
||||||
|
|
||||||
--error 1123
|
--error 1123
|
||||||
SELECT REGR_SLOPE(y) FROM t1;
|
SELECT REGR_SLOPE(y) FROM t1;
|
||||||
|
Reference in New Issue
Block a user