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
MCOL-271 empty strings should not be NULLs (#2794)
This patch improves handling of NULLs in textual fields in ColumnStore. Previously empty strings were considered NULLs and it could be a problem if data scheme allows for empty strings. It was also one of major reasons of behavior difference between ColumnStore and other engines in MariaDB family. Also, this patch fixes some other bugs and incorrect behavior, for example, incorrect comparison for "column <= ''" which evaluates to constant True for all purposes before this patch.
This commit is contained in:
committed by
Roman Nozdrin
parent
0ea592da80
commit
b53c231ca6
@ -24,7 +24,7 @@ FROM
|
||||
t1;
|
||||
json value path result
|
||||
{"k1":123, "k2":345} 123 $.k1 1
|
||||
NULL NULL $ NULL
|
||||
$ NULL
|
||||
null null $ 1
|
||||
"10" "10" $ 1
|
||||
"10" 10 $ 0
|
||||
|
@ -106,7 +106,7 @@ CHAR_LENGTH(JSON_UNQUOTE(l))
|
||||
FROM
|
||||
t1;
|
||||
JSON_UNQUOTE(l) CHAR_LENGTH(JSON_UNQUOTE(l))
|
||||
NULL 0
|
||||
0
|
||||
TRUNCATE t1;
|
||||
INSERT INTO
|
||||
t1
|
||||
@ -117,7 +117,7 @@ JSON_UNQUOTE(l)
|
||||
FROM
|
||||
t1;
|
||||
JSON_UNQUOTE(l)
|
||||
NULL
|
||||
|
||||
# Inconrrect type e.g. Integer
|
||||
CREATE TABLE t3(i INT) ENGINE = columnstore;
|
||||
INSERT INTO
|
||||
|
@ -78,7 +78,7 @@ SELECT JSON_ARRAYAGG(a), JSON_ARRAYAGG(b) FROM t1 GROUP BY a;
|
||||
JSON_ARRAYAGG(a) JSON_ARRAYAGG(b)
|
||||
[1,1,1,1] ["Hello","World","Hello","World"]
|
||||
[2,2,2,2,2,2,2,2] ["This","Will","Work","!","This","Will","Work","!"]
|
||||
[3,3] NULL
|
||||
[3,3]
|
||||
#
|
||||
# DISTINCT and LIMIT
|
||||
#
|
||||
@ -90,7 +90,7 @@ JSON_ARRAYAGG(b LIMIT 2)
|
||||
["Hello","World","This","Will","Work","!","Hello","World","This","Will","Work","!"]
|
||||
SELECT JSON_ARRAYAGG(b LIMIT 1) FROM t1 GROUP BY b;
|
||||
JSON_ARRAYAGG(b LIMIT 1)
|
||||
NULL
|
||||
|
||||
["!","!"]
|
||||
["Hello","Hello"]
|
||||
["This","This"]
|
||||
@ -99,7 +99,7 @@ NULL
|
||||
["World","World"]
|
||||
SELECT JSON_ARRAYAGG(b LIMIT 2) FROM t1 GROUP BY a;
|
||||
JSON_ARRAYAGG(b LIMIT 2)
|
||||
NULL
|
||||
|
||||
["Hello","World","Hello","World"]
|
||||
["This","Will","Work","!","This","Will","Work","!"]
|
||||
SELECT JSON_ARRAYAGG(DISTINCT a) FROM t1;
|
||||
@ -156,7 +156,7 @@ DROP TABLE t1;
|
||||
CREATE TABLE t1 (a INT)ENGINE=COLUMNSTORE;
|
||||
SELECT JSON_ARRAYAGG(a) FROM t1;
|
||||
JSON_ARRAYAGG(a)
|
||||
NULL
|
||||
|
||||
DROP TABLE t1;
|
||||
#
|
||||
#
|
||||
|
@ -0,0 +1,77 @@
|
||||
DROP DATABASE IF EXISTS test_empty_strings;
|
||||
CREATE DATABASE test_empty_strings;
|
||||
USE test_empty_strings;
|
||||
CREATE TABLE t(s text) ENGINE=COLUMNSTORE;
|
||||
INSERT INTO t(s) VALUES (''), (NULL);
|
||||
SELECT COUNT(*) FROM t WHERE s IS NULL;
|
||||
COUNT(*)
|
||||
1
|
||||
SELECT COUNT(*) FROM t WHERE s IS NOT NULL;
|
||||
COUNT(*)
|
||||
1
|
||||
SELECT * FROM t;
|
||||
s
|
||||
|
||||
NULL
|
||||
DROP TABLE t;
|
||||
CREATE TABLE t(s text) ENGINE=COLUMNSTORE;
|
||||
INSERT INTO t(s) VALUES ('');
|
||||
INSERT INTO t(s) VALUES (NULL);
|
||||
SELECT * FROM t;
|
||||
s
|
||||
|
||||
NULL
|
||||
SELECT COUNT(*) FROM t WHERE s IS NULL;
|
||||
COUNT(*)
|
||||
1
|
||||
DROP TABLE t;
|
||||
CREATE TABLE t(s text) ENGINE=COLUMNSTORE;
|
||||
INSERT INTO t(s) VALUES ('_CpNuLl_'),(''), (NULL);
|
||||
SELECT * FROM t;
|
||||
s
|
||||
_CpNuLl_
|
||||
|
||||
NULL
|
||||
SELECT COUNT(*) FROM t WHERE s IS NULL;
|
||||
COUNT(*)
|
||||
1
|
||||
DROP TABLE t;
|
||||
CREATE TABLE t(c6 CHAR(6)) ENGINE=COLUMNSTORE;
|
||||
INSERT INTO t(c6) VALUES ('a'), ('b'), ('c');
|
||||
SELECT 2, COUNT(*) FROM t WHERE (c6 <= 'b' OR c6 <= '');
|
||||
2 COUNT(*)
|
||||
2 2
|
||||
SELECT 2, COUNT(*) FROM t WHERE (c6 <= 'b');
|
||||
2 COUNT(*)
|
||||
2 2
|
||||
SELECT 0, COUNT(*) FROM t WHERE (c6 <= '');
|
||||
0 COUNT(*)
|
||||
0 0
|
||||
SELECT 0, COUNT(*) FROM t WHERE (c6 <= ' ');
|
||||
0 COUNT(*)
|
||||
0 0
|
||||
SELECT 2, COUNT(*) FROM t WHERE (c6 <= 'b' OR c6 <= ' ');
|
||||
2 COUNT(*)
|
||||
2 2
|
||||
SELECT 0, COUNT(*) FROM t WHERE (c6 < '');
|
||||
0 COUNT(*)
|
||||
0 0
|
||||
SELECT 0, COUNT(*) FROM t WHERE (c6 < ' ');
|
||||
0 COUNT(*)
|
||||
0 0
|
||||
DROP TABLE IF EXISTS t;
|
||||
CREATE TABLE t(a CHAR(10)) ENGINE=COLUMNSTORE;
|
||||
INSERT INTO t(a) VALUES (''), (NULL), (' '), (' a ');
|
||||
SELECT LTRIM_ORACLE(a) FROM t;
|
||||
LTRIM_ORACLE(a)
|
||||
NULL
|
||||
NULL
|
||||
NULL
|
||||
a
|
||||
SELECT RTRIM_ORACLE(a) FROM t;
|
||||
RTRIM_ORACLE(a)
|
||||
NULL
|
||||
NULL
|
||||
NULL
|
||||
a
|
||||
DROP DATABASE test_empty_strings;
|
@ -11,5 +11,5 @@ COUNT(DISTINCT a)
|
||||
3
|
||||
SELECT COUNT(DISTINCT b) FROM t1;
|
||||
COUNT(DISTINCT b)
|
||||
2
|
||||
3
|
||||
DROP DATABASE mcs115_db;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs123_db;
|
||||
CREATE DATABASE mcs123_db;
|
||||
USE mcs123_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 123),('a', 1),('b', 12),('c', 1861),('c', 1991),('d', 10701),('d', 1071);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 12),('c', 1861),('c', 1991),('d', 10701),('d', 1071);
|
||||
SELECT a, b, CUME_DIST() OVER(ORDER BY a) cume_dist_val FROM t1;
|
||||
a b cume_dist_val
|
||||
NULL NULL 0.1250000000
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs124_db;
|
||||
CREATE DATABASE mcs124_db;
|
||||
USE mcs124_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, DENSE_RANK() OVER(ORDER BY a) rank FROM t1;
|
||||
a b rank
|
||||
NULL NULL 1
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs125_db;
|
||||
CREATE DATABASE mcs125_db;
|
||||
USE mcs125_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, FIRST_VALUE(b) OVER(ORDER BY a DESC) fv FROM t1;
|
||||
a b fv
|
||||
d 10701 10701
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs126_db;
|
||||
CREATE DATABASE mcs126_db;
|
||||
USE mcs126_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, LAG(a) OVER(ORDER BY a) pc FROM t1;
|
||||
a b pc
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs127_db;
|
||||
CREATE DATABASE mcs127_db;
|
||||
USE mcs127_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, LAST_VALUE(b) OVER(ORDER BY a) last_value FROM t1;
|
||||
a b last_value
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs128_db;
|
||||
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);
|
||||
INSERT INTO t1 VALUES (NULL, 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;
|
||||
a b lead_value
|
||||
NULL NULL a
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs129_db;
|
||||
CREATE DATABASE mcs129_db;
|
||||
USE mcs129_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, NTH_VALUE(a, 2) OVER(ORDER BY b DESC) second_value FROM t1;
|
||||
a b second_value
|
||||
d 10701 NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs130_db;
|
||||
CREATE DATABASE mcs130_db;
|
||||
USE mcs130_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, NTILE(3) OVER(ORDER BY b DESC) ntile FROM t1;
|
||||
a b ntile
|
||||
d 10701 1
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs131_db;
|
||||
CREATE DATABASE mcs131_db;
|
||||
USE mcs131_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, PERCENT_RANK() OVER(ORDER BY a) percent_rank FROM t1;
|
||||
a b percent_rank
|
||||
NULL NULL 0.0000000000
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs132_db;
|
||||
CREATE DATABASE mcs132_db;
|
||||
USE mcs132_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, PERCENTILE_CONT(1) WITHIN GROUP(ORDER BY b) OVER(PARTITION BY a DESC) pc FROM t1;
|
||||
a b pc
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs133_db;
|
||||
CREATE DATABASE mcs133_db;
|
||||
USE mcs133_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, PERCENTILE_DISC(1) WITHIN GROUP(ORDER BY b) OVER(PARTITION BY a DESC) pd FROM t1;
|
||||
a b pd
|
||||
NULL NULL 2147483647
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs134_db;
|
||||
CREATE DATABASE mcs134_db;
|
||||
USE mcs134_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, RANK() OVER(ORDER BY a) rank FROM t1;
|
||||
a b rank
|
||||
NULL NULL 1
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs135_db;
|
||||
CREATE DATABASE mcs135_db;
|
||||
USE mcs135_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 123),('a', 1),('b', 12),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 12),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, ROW_NUMBER() OVER(ORDER BY a) row_num FROM t1;
|
||||
a b row_num
|
||||
NULL NULL 1
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs136_db;
|
||||
CREATE DATABASE mcs136_db;
|
||||
USE mcs136_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, SUM(b) OVER(ORDER BY a) sum FROM t1;
|
||||
a b sum
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs137_db;
|
||||
CREATE DATABASE mcs137_db;
|
||||
USE mcs137_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, COUNT(b) OVER(ORDER BY a) count FROM t1;
|
||||
a b count
|
||||
NULL NULL 0
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs138_db;
|
||||
CREATE DATABASE mcs138_db;
|
||||
USE mcs138_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY a) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs139_db;
|
||||
CREATE DATABASE mcs139_db;
|
||||
USE mcs139_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY a) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs140_db;
|
||||
CREATE DATABASE mcs140_db;
|
||||
USE mcs140_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, MEDIAN(b) OVER(PARTITION BY b) median FROM t1;
|
||||
a b median
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs141_db;
|
||||
CREATE DATABASE mcs141_db;
|
||||
USE mcs141_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STD(b) OVER(PARTITION BY a) pd FROM t1;
|
||||
a b pd
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs142_db;
|
||||
CREATE DATABASE mcs142_db;
|
||||
USE mcs142_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STDDEV(b) OVER(PARTITION BY a) pd FROM t1;
|
||||
a b pd
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs143_db;
|
||||
CREATE DATABASE mcs143_db;
|
||||
USE mcs143_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STDDEV_POP(b) OVER(PARTITION BY a) pd FROM t1;
|
||||
a b pd
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs144_db;
|
||||
CREATE DATABASE mcs144_db;
|
||||
USE mcs144_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STDDEV_SAMP(b) OVER(PARTITION BY a) pd FROM t1;
|
||||
a b pd
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs145_db;
|
||||
CREATE DATABASE mcs145_db;
|
||||
USE mcs145_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, VARIANCE(b) OVER(PARTITION BY a) variance FROM t1;
|
||||
a b variance
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs146_db;
|
||||
CREATE DATABASE mcs146_db;
|
||||
USE mcs146_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, VAR_POP(b) OVER(PARTITION BY a) var_pop FROM t1;
|
||||
a b var_pop
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs147_db;
|
||||
CREATE DATABASE mcs147_db;
|
||||
USE mcs147_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, VAR_SAMP(b) OVER(PARTITION BY a) var_samp FROM t1;
|
||||
a b var_samp
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs148_db;
|
||||
CREATE DATABASE mcs148_db;
|
||||
USE mcs148_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, BIT_OR(b) OVER(PARTITION BY a) FROM t1;
|
||||
ERROR HY000: Internal error: MCS-9018: Window Function 'BIT_OR' is currently not supported in Columnstore.
|
||||
SELECT a, b, BIT_OR(b) OVER(ORDER BY a) FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs149_db;
|
||||
CREATE DATABASE mcs149_db;
|
||||
USE mcs149_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, BIT_AND(b) OVER(PARTITION BY a) FROM t1;
|
||||
ERROR HY000: Internal error: MCS-9018: Window Function 'BIT_AND' is currently not supported in Columnstore.
|
||||
SELECT a, b, BIT_AND(b) OVER(ORDER BY a) FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs150_db;
|
||||
CREATE DATABASE mcs150_db;
|
||||
USE mcs150_db;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES ('', NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('b', 15),('b', 16),('b', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, BIT_XOR(b) OVER(PARTITION BY a) FROM t1;
|
||||
ERROR HY000: Internal error: MCS-9018: Window Function 'BIT_XOR' is currently not supported in Columnstore.
|
||||
SELECT a, b, BIT_XOR(b) OVER(ORDER BY a) FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs151_db;
|
||||
CREATE DATABASE mcs151_db;
|
||||
USE mcs151_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 123),('a', 1),('b', 123),('c', 1861),('c', 1991),('d', 10701),('d', 1071),('a', 92);
|
||||
SELECT a, b, AVG(b) OVER(ORDER BY a) avg FROM t1;
|
||||
a b avg
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs152_db;
|
||||
CREATE DATABASE mcs152_db;
|
||||
USE mcs152_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, AVG(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) avg FROM t1;
|
||||
a b avg
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs153_db;
|
||||
CREATE DATABASE mcs153_db;
|
||||
USE mcs153_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, BIT_AND(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) bit_and FROM t1;
|
||||
ERROR HY000: Internal error: MCS-9018: Window Function 'BIT_AND' is currently not supported in Columnstore.
|
||||
SELECT a, b, BIT_AND(b) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) bit_and FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs154_db;
|
||||
CREATE DATABASE mcs154_db;
|
||||
USE mcs154_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, BIT_OR(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) bit_or FROM t1;
|
||||
ERROR HY000: Internal error: MCS-9018: Window Function 'BIT_OR' is currently not supported in Columnstore.
|
||||
SELECT a, b, BIT_OR(b) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) bit_or FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs155_db;
|
||||
CREATE DATABASE mcs155_db;
|
||||
USE mcs155_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, BIT_XOR(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) BIT_XOR FROM t1;
|
||||
ERROR HY000: Internal error: MCS-9018: Window Function 'BIT_XOR' is currently not supported in Columnstore.
|
||||
SELECT a, b, BIT_XOR(b) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) BIT_XOR FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs156_db;
|
||||
CREATE DATABASE mcs156_db;
|
||||
USE mcs156_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, COUNT(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) count FROM t1;
|
||||
a b count
|
||||
NULL NULL 0
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs157_db;
|
||||
CREATE DATABASE mcs157_db;
|
||||
USE mcs157_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, LEAD(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) lead_value FROM t1;
|
||||
a b lead_value
|
||||
NULL NULL 12
|
||||
|
@ -5,7 +5,7 @@ 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, MAX(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -16,7 +16,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL 19
|
||||
NULL 19
|
||||
a 12 19
|
||||
a 13 19
|
||||
b 14 19
|
||||
@ -27,7 +27,7 @@ b 18 19
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -38,7 +38,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
a 12 13
|
||||
a 13 14
|
||||
b 14 15
|
||||
@ -49,7 +49,7 @@ b 18 19
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL 19
|
||||
NULL 19
|
||||
a 12 19
|
||||
a 13 19
|
||||
b 14 19
|
||||
@ -68,7 +68,7 @@ c 15 19
|
||||
b 14 19
|
||||
a 13 19
|
||||
a 12 19
|
||||
NULL NULL 19
|
||||
NULL 19
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b DESC RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
a 19 19
|
||||
@ -79,7 +79,7 @@ c 15 15
|
||||
b 14 14
|
||||
a 13 13
|
||||
a 12 12
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
a 19 19
|
||||
@ -90,7 +90,7 @@ c 15 16
|
||||
b 14 15
|
||||
a 13 14
|
||||
a 12 13
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
a 19 19
|
||||
@ -101,7 +101,7 @@ c 15 16
|
||||
b 14 15
|
||||
a 13 14
|
||||
a 12 13
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MAX(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
a 19 19
|
||||
@ -112,10 +112,10 @@ c 15 16
|
||||
b 14 15
|
||||
a 13 14
|
||||
a 12 13
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY a ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
a 19 19
|
||||
@ -126,7 +126,7 @@ d 16 16
|
||||
d 17 17
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY b ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -137,7 +137,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY a ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 19
|
||||
a 13 19
|
||||
a 19 19
|
||||
@ -148,7 +148,7 @@ d 16 17
|
||||
d 17 17
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY b ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -159,7 +159,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
a 19 19
|
||||
@ -170,7 +170,7 @@ d 16 16
|
||||
d 17 17
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -181,7 +181,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 13
|
||||
a 13 19
|
||||
a 19 19
|
||||
@ -192,7 +192,7 @@ d 16 17
|
||||
d 17 17
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -203,7 +203,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 19
|
||||
a 13 19
|
||||
a 19 19
|
||||
@ -214,7 +214,7 @@ d 16 17
|
||||
d 17 17
|
||||
SELECT a, b, MAX(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) max FROM t1;
|
||||
a b max
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
|
@ -5,7 +5,7 @@ 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, MIN(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 12
|
||||
b 14 12
|
||||
@ -16,7 +16,7 @@ b 18 12
|
||||
a 19 12
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -27,7 +27,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 12
|
||||
b 14 13
|
||||
@ -38,7 +38,7 @@ b 18 17
|
||||
a 19 18
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
a 12 12
|
||||
a 13 12
|
||||
b 14 13
|
||||
@ -49,7 +49,7 @@ b 18 17
|
||||
a 19 18
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
a 12 12
|
||||
a 13 12
|
||||
b 14 13
|
||||
@ -68,7 +68,7 @@ c 15 15
|
||||
b 14 14
|
||||
a 13 13
|
||||
a 12 12
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b DESC RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
a 19 12
|
||||
@ -79,7 +79,7 @@ c 15 12
|
||||
b 14 12
|
||||
a 13 12
|
||||
a 12 12
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
a 19 19
|
||||
@ -90,7 +90,7 @@ c 15 15
|
||||
b 14 14
|
||||
a 13 13
|
||||
a 12 12
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
a 19 18
|
||||
@ -101,7 +101,7 @@ c 15 14
|
||||
b 14 13
|
||||
a 13 12
|
||||
a 12 12
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MIN(b) OVER(ORDER BY b DESC ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
a 19 12
|
||||
@ -112,10 +112,10 @@ c 15 12
|
||||
b 14 12
|
||||
a 13 12
|
||||
a 12 12
|
||||
NULL NULL 12
|
||||
NULL 12
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY a ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 12
|
||||
a 19 12
|
||||
@ -126,7 +126,7 @@ d 16 16
|
||||
d 17 16
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY b ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -137,7 +137,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY a ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
a 19 19
|
||||
@ -148,7 +148,7 @@ d 16 16
|
||||
d 17 17
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY b ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -159,7 +159,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 12
|
||||
a 19 13
|
||||
@ -170,7 +170,7 @@ d 16 16
|
||||
d 17 16
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -181,7 +181,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 12
|
||||
a 19 13
|
||||
@ -192,7 +192,7 @@ d 16 16
|
||||
d 17 16
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
@ -203,7 +203,7 @@ b 18 18
|
||||
a 19 19
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY a ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 12
|
||||
a 19 13
|
||||
@ -214,7 +214,7 @@ d 16 16
|
||||
d 17 16
|
||||
SELECT a, b, MIN(b) OVER(PARTITION BY b ORDER BY b ROWS BETWEEN 1 PRECEDING AND UNBOUNDED FOLLOWING) min FROM t1;
|
||||
a b min
|
||||
NULL NULL NULL
|
||||
NULL NULL
|
||||
a 12 12
|
||||
a 13 13
|
||||
b 14 14
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs160_db;
|
||||
CREATE DATABASE mcs160_db;
|
||||
USE mcs160_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, NTILE(3) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) lead_value FROM t1;
|
||||
ERROR HY000: Window frame is not allowed with 'ntile'
|
||||
SELECT a, b, NTILE(3) OVER(ORDER BY b RANGE BETWEEN CURRENT ROW AND UNBOUNDED FOLLOWING) lead_value FROM t1;
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs161_db;
|
||||
CREATE DATABASE mcs161_db;
|
||||
USE mcs161_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STD(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) std FROM t1;
|
||||
a b std
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs162_db;
|
||||
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);
|
||||
INSERT INTO t1 VALUES (NULL, 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;
|
||||
a b stddev
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs163_db;
|
||||
CREATE DATABASE mcs163_db;
|
||||
USE mcs163_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STDDEV_POP(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) STDDEV_POP FROM t1;
|
||||
a b STDDEV_POP
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs164_db;
|
||||
CREATE DATABASE mcs164_db;
|
||||
USE mcs164_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, STDDEV_SAMP(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) STDDEV_SAMP FROM t1;
|
||||
a b STDDEV_SAMP
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs165_db;
|
||||
CREATE DATABASE mcs165_db;
|
||||
USE mcs165_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, SUM(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) sum FROM t1;
|
||||
a b sum
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs166_db;
|
||||
CREATE DATABASE mcs166_db;
|
||||
USE mcs166_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, VAR_POP(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) VAR_POP FROM t1;
|
||||
a b VAR_POP
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs167_db;
|
||||
CREATE DATABASE mcs167_db;
|
||||
USE mcs167_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, VAR_SAMP(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) VAR_SAMP FROM t1;
|
||||
a b VAR_SAMP
|
||||
NULL NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs168_db;
|
||||
CREATE DATABASE mcs168_db;
|
||||
USE mcs168_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);
|
||||
INSERT INTO t1 VALUES (NULL, NULL),('a', 12),('a', 13),('b', 14),('c', 15),('d', 16),('d', 17),('b', 18),('a', 19);
|
||||
SELECT a, b, VARIANCE(b) OVER(ORDER BY b RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) VARIANCE FROM t1;
|
||||
a b VARIANCE
|
||||
NULL NULL NULL
|
||||
|
@ -3,7 +3,7 @@ CREATE DATABASE mcs169_db;
|
||||
USE mcs169_db;
|
||||
SET default_storage_engine=Columnstore;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT, c DATETIME, d DOUBLE);
|
||||
INSERT INTO t1 VALUES ('', NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
INSERT INTO t1 VALUES (NULL, NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -3,7 +3,7 @@ CREATE DATABASE mcs171_db;
|
||||
USE mcs171_db;
|
||||
SET default_storage_engine=Columnstore;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT, c DATETIME, d DOUBLE);
|
||||
INSERT INTO t1 VALUES ('', NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
INSERT INTO t1 VALUES (NULL, NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -3,7 +3,7 @@ CREATE DATABASE mcs173_db;
|
||||
USE mcs173_db;
|
||||
SET default_storage_engine=Columnstore;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT, c DATETIME, d DOUBLE);
|
||||
INSERT INTO t1 VALUES ('', NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
INSERT INTO t1 VALUES (NULL, NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -3,7 +3,7 @@ CREATE DATABASE mcs174_db;
|
||||
USE mcs174_db;
|
||||
SET default_storage_engine=Columnstore;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT, c DATETIME, d DOUBLE);
|
||||
INSERT INTO t1 VALUES ('', NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
INSERT INTO t1 VALUES (NULL, NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -3,7 +3,7 @@ CREATE DATABASE mcs176_db;
|
||||
USE mcs176_db;
|
||||
SET default_storage_engine=Columnstore;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT, c DATETIME, d DOUBLE);
|
||||
INSERT INTO t1 VALUES ('', NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
INSERT INTO t1 VALUES (NULL, NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -3,7 +3,7 @@ CREATE DATABASE mcs180_db;
|
||||
USE mcs180_db;
|
||||
SET default_storage_engine=Columnstore;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT);
|
||||
INSERT INTO t1 VALUES ('', NULL), ('m', 6), ('N', 5), ('o', 4);
|
||||
INSERT INTO t1 VALUES (NULL, NULL), ('m', 6), ('N', 5), ('o', 4);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -33,7 +33,7 @@ bbbbbbbbbb 10
|
||||
cccccccccccccccccccc 20
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a CHAR(1), b INT, c DATETIME, d DOUBLE);
|
||||
INSERT INTO t1 VALUES ('', NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
INSERT INTO t1 VALUES (NULL, NULL, '0-0-0', NULL),('a', 12, '1212-12-12', 1.19691E+100),('b', 13, '1313-3-13 13:13:13', 2.1961E+18),('c', 14, '1414-4-14', 0.16191),('d', 15, '2015-5-15 15:15:15', 1.971917);
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs188_db;
|
||||
CREATE DATABASE mcs188_db;
|
||||
USE mcs188_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT AVG(DISTINCT a) FROM t1;
|
||||
AVG(DISTINCT a)
|
||||
4.1667
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs189_db;
|
||||
CREATE DATABASE mcs189_db;
|
||||
USE mcs189_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT SUM(DISTINCT a) FROM t1;
|
||||
SUM(DISTINCT a)
|
||||
25
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs190_db;
|
||||
CREATE DATABASE mcs190_db;
|
||||
USE mcs190_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT MAX(DISTINCT a) FROM t1;
|
||||
MAX(DISTINCT a)
|
||||
7
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs191_db;
|
||||
CREATE DATABASE mcs191_db;
|
||||
USE mcs191_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(1, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT MIN(DISTINCT a) FROM t1;
|
||||
MIN(DISTINCT a)
|
||||
1
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs192_db;
|
||||
CREATE DATABASE mcs192_db;
|
||||
USE mcs192_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT CORR(y, x) FROM t1;
|
||||
CORR(y, x)
|
||||
0.9907002406503415
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs193_db;
|
||||
CREATE DATABASE mcs193_db;
|
||||
USE mcs193_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT COVAR_POP(y, x) FROM t1;
|
||||
COVAR_POP(y, x)
|
||||
40.285714285714285
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs194_db;
|
||||
CREATE DATABASE mcs194_db;
|
||||
USE mcs194_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT COVAR_SAMP(y, x) FROM t1;
|
||||
COVAR_SAMP(y, x)
|
||||
47
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs195_db;
|
||||
CREATE DATABASE mcs195_db;
|
||||
USE mcs195_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT REGR_AVGX(y, x) FROM t1;
|
||||
REGR_AVGX(y, x)
|
||||
55.5714
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs196_db;
|
||||
CREATE DATABASE mcs196_db;
|
||||
USE mcs196_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT REGR_SXX(y, x) FROM t1;
|
||||
REGR_SXX(y, x)
|
||||
2893.714285714286
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs197_db;
|
||||
CREATE DATABASE mcs197_db;
|
||||
USE mcs197_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT REGR_COUNT(y, x) FROM t1;
|
||||
REGR_COUNT(y, x)
|
||||
7
|
||||
|
@ -8,12 +8,12 @@ REGR_INTERCEPT(y, x)
|
||||
-1.415580568720379
|
||||
SELECT z, REGR_INTERCEPT(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||
z REGR_INTERCEPT(y, x)
|
||||
NULL NULL
|
||||
NULL
|
||||
aaa -1.1792849631966351
|
||||
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
|
||||
NULL
|
||||
aaa -1.1792849631966351
|
||||
aaa -1.1792849631966351
|
||||
aaa -1.1792849631966351
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs199_db;
|
||||
CREATE DATABASE mcs199_db;
|
||||
USE mcs199_db;
|
||||
CREATE TABLE t1 (x INT, y MEDIUMINT, z CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL, NULL),(20, 1, 'aaa'),(39, 2, 'aaa'),(48, 3, 'bbb'),(57, 4, 'bbb'),(66, 5, 'aaa'),(75, 6, 'aaa'),(84, 7, 'bbb');
|
||||
SELECT REGR_R2(y, x) FROM t1;
|
||||
REGR_R2(y, x)
|
||||
0.9814869668246445
|
||||
|
@ -8,12 +8,12 @@ REGR_SLOPE(y, x)
|
||||
0.09745260663507109
|
||||
SELECT z, REGR_SLOPE(y, x) FROM t1 GROUP BY z ORDER BY z;
|
||||
z REGR_SLOPE(y, x)
|
||||
NULL NULL
|
||||
NULL
|
||||
aaa 0.0935856992639327
|
||||
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
|
||||
NULL
|
||||
aaa 0.0935856992639327
|
||||
aaa 0.0935856992639327
|
||||
aaa 0.0935856992639327
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs205_db;
|
||||
CREATE DATABASE mcs205_db;
|
||||
USE mcs205_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT a, INET_ATON(a) FROM t1 ORDER BY a;
|
||||
a INET_ATON(a)
|
||||
NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs206_db;
|
||||
CREATE DATABASE mcs206_db;
|
||||
USE mcs206_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT a, INET_NTOA(a) FROM t1 ORDER BY a;
|
||||
a INET_NTOA(a)
|
||||
NULL NULL
|
||||
|
@ -11,7 +11,7 @@ t1_TEXT TEXT,
|
||||
t1_CHAR_1 CHAR(1),
|
||||
t1_DATETIME DATETIME
|
||||
)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, '', '', '', '0-0-0');
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, NULL, NULL, '0-0-0');
|
||||
INSERT INTO t1 VALUES(203685477580676, -3.797693231E+108, -7.402866E+18, repeat('b',10), repeat('b',10), 'b', '2387-11-08 11:22:30.123');
|
||||
SELECT t1_BIGINT, MD5(t1_BIGINT) FROM t1 ORDER BY t1_BIGINT;
|
||||
t1_BIGINT MD5(t1_BIGINT)
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs219_db;
|
||||
CREATE DATABASE mcs219_db;
|
||||
USE mcs219_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(35))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'columnstore engine'),(2, 'mariadb database');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'columnstore engine'),(2, 'mariadb database');
|
||||
SELECT b, MID(b,4,5) FROM t1;
|
||||
b MID(b,4,5)
|
||||
NULL NULL
|
||||
@ -56,21 +56,21 @@ mariadb database ariadb database
|
||||
SELECT b, MID(b,0,0) FROM t1;
|
||||
b MID(b,0,0)
|
||||
NULL NULL
|
||||
columnstore engine NULL
|
||||
mariadb database NULL
|
||||
columnstore engine
|
||||
mariadb database
|
||||
SELECT b, MID(b,1,0) FROM t1;
|
||||
b MID(b,1,0)
|
||||
NULL NULL
|
||||
columnstore engine NULL
|
||||
mariadb database NULL
|
||||
columnstore engine
|
||||
mariadb database
|
||||
SELECT b, MID(b,0,1) FROM t1;
|
||||
b MID(b,0,1)
|
||||
NULL NULL
|
||||
columnstore engine NULL
|
||||
mariadb database NULL
|
||||
columnstore engine
|
||||
mariadb database
|
||||
SELECT b, MID(b,-1,0) FROM t1;
|
||||
b MID(b,-1,0)
|
||||
NULL NULL
|
||||
columnstore engine NULL
|
||||
mariadb database NULL
|
||||
columnstore engine
|
||||
mariadb database
|
||||
DROP DATABASE mcs219_db;
|
||||
|
@ -28,10 +28,10 @@ CREATE TABLE t_binary(name VARCHAR(20)) CHARSET binary ENGINE=Columnstore;
|
||||
INSERT INTO t_binary VALUES(0x61000162FF),(0x61000163FF),(0x61000164FF),(0x61000165FF);
|
||||
SELECT hex(name) FROM t_binary;
|
||||
hex(name)
|
||||
61
|
||||
61
|
||||
61
|
||||
61
|
||||
61000162FF
|
||||
61000163FF
|
||||
61000164FF
|
||||
61000165FF
|
||||
SET NAMES cp1250;
|
||||
CREATE TABLE t_cp1250(name VARCHAR(20)) CHARSET cp1250 ENGINE=Columnstore;
|
||||
INSERT INTO t_cp1250 VALUES('aaaa'),('bbbbb');
|
||||
@ -97,7 +97,7 @@ CREATE TABLE t_latin1(name VARCHAR(20)) CHARSET latin1 ENGINE=Columnstore;
|
||||
INSERT INTO t_latin1 VALUES(0x00),(0x01),(0x02),(0x03),(0x04),(0x05),(0x06),(0x07);
|
||||
SELECT hex(name) FROM t_latin1;
|
||||
hex(name)
|
||||
NULL
|
||||
00
|
||||
01
|
||||
02
|
||||
03
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs222_db;
|
||||
CREATE DATABASE mcs222_db;
|
||||
USE mcs222_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(15))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'a'),(2, 'aqaaqq'),(3, 'cqcqqcq'),(4, 'qdqdqqdq'),(5, 'aaaqq');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'a'),(2, 'aqaaqq'),(3, 'cqcqqcq'),(4, 'qdqdqqdq'),(5, 'aaaqq');
|
||||
SELECT POSITION('zz' IN 'aazazazapq');
|
||||
POSITION('zz' IN 'aazazazapq')
|
||||
0
|
||||
|
@ -10,7 +10,7 @@ t1_TEXT TEXT,
|
||||
t1_CHAR_1 CHAR(1),
|
||||
t1_DATETIME DATETIME
|
||||
)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, '', '', NULL);
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO t1 VALUES(25, -3.797, -7.402866, 'abcd', 'p', '2020-10-18 11:22:33');
|
||||
SELECT t1_INT, REPEAT(t1_INT, 2) FROM t1 ORDER BY 1;
|
||||
t1_INT REPEAT(t1_INT, 2)
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs225_db;
|
||||
CREATE DATABASE mcs225_db;
|
||||
USE mcs225_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(20))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'abcabc'),(3, 'cccbba'),(4, 'dddd'),(5, 'pqrs');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'abcabc'),(3, 'cccbba'),(4, 'dddd'),(5, 'pqrs');
|
||||
SELECT REPLACE('abbcccb', 'b', 'z');
|
||||
REPLACE('abbcccb', 'b', 'z')
|
||||
azzcccz
|
||||
|
@ -16,16 +16,30 @@ hello hi
|
||||
INSERT INTO t1 (c1) VALUES ('hello');
|
||||
ERROR HY000: Field 'c2' doesn't have a default value
|
||||
INSERT IGNORE INTO t1 (c1) VALUES ('hello');
|
||||
ERROR HY000: Internal error: CAL0001: Insert Failed: MCS-4015: Column 'c2' cannot be null.
|
||||
Warnings:
|
||||
Warning 1364 Field 'c2' doesn't have a default value
|
||||
SELECT * FROM t1;
|
||||
c1 c2
|
||||
hello hi
|
||||
hello
|
||||
CREATE TABLE t1i(
|
||||
c1 CHAR(5),
|
||||
c2 CHAR(10) NOT NULL
|
||||
) ENGINE=InnoDB;
|
||||
INSERT IGNORE INTO t1i (c1) VALUES ('hello');
|
||||
Warnings:
|
||||
Warning 1364 Field 'c2' doesn't have a default value
|
||||
SELECT * FROM t1i;
|
||||
c1 c2
|
||||
hello
|
||||
DROP TABLE t1i;
|
||||
INSERT INTO t1 VALUES ('123', 'abc');
|
||||
INSERT INTO t1 VALUES ('123', 'abc');
|
||||
INSERT IGNORE INTO t1 VALUES ('123', 'abc');
|
||||
SELECT * FROM t1;
|
||||
c1 c2
|
||||
hello hi
|
||||
hello
|
||||
123 abc
|
||||
123 abc
|
||||
123 abc
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs259_db;
|
||||
CREATE DATABASE mcs259_db;
|
||||
USE mcs259_db;
|
||||
CREATE TABLE t1 (a INT, b VARCHAR(30))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'mariadb'),(2, 'columnstore'),(3, 'mariadb columnstore');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'mariadb'),(2, 'columnstore'),(3, 'mariadb columnstore');
|
||||
SELECT INSTR('abcdefghi', 'i') FROM t1 LIMIT 1;
|
||||
INSTR('abcdefghi', 'i')
|
||||
9
|
||||
|
@ -5,13 +5,13 @@ CREATE TABLE t1 (a INT, b DECIMAL(3,2), c CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, NULL, ''),(1, 1.11, 'a'),(2, 2.22, 'b'),(3, 3.33, 'c');
|
||||
SELECT SPACE(-1) FROM t1 LIMIT 1;
|
||||
SPACE(-1)
|
||||
NULL
|
||||
|
||||
SELECT SPACE(0) FROM t1 LIMIT 1;
|
||||
SPACE(0)
|
||||
NULL
|
||||
|
||||
SELECT SPACE(0.49) FROM t1 LIMIT 1;
|
||||
SPACE(0.49)
|
||||
NULL
|
||||
|
||||
SELECT SPACE(0.5) FROM t1 LIMIT 1;
|
||||
SPACE(0.5)
|
||||
|
||||
@ -20,7 +20,7 @@ SPACE(1)
|
||||
|
||||
SELECT SPACE('@') FROM t1 LIMIT 1;
|
||||
SPACE('@')
|
||||
NULL
|
||||
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect INTEGER value: '@'
|
||||
Warning 1292 Truncated incorrect INTEGER value: '@'
|
||||
@ -38,7 +38,7 @@ NULL NULL
|
||||
3.33
|
||||
SELECT c, SPACE(c) FROM t1 ORDER BY 1;
|
||||
c SPACE(c)
|
||||
NULL NULL
|
||||
NULL
|
||||
a NULL
|
||||
b NULL
|
||||
c NULL
|
||||
|
@ -23,7 +23,7 @@ SUBSTRING_INDEX('pqr stu vwz', ' ', -1)
|
||||
vwz
|
||||
SELECT SUBSTRING_INDEX('pqr stu vwz', ' ', 0) FROM t1 LIMIT 1;
|
||||
SUBSTRING_INDEX('pqr stu vwz', ' ', 0)
|
||||
NULL
|
||||
|
||||
SELECT SUBSTRING_INDEX('11:12:13', ':', 4) FROM t1 LIMIT 1;
|
||||
SUBSTRING_INDEX('11:12:13', ':', 4)
|
||||
11:12:13
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs285_db;
|
||||
CREATE DATABASE mcs285_db;
|
||||
USE mcs285_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(15))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'mariadb'),(2, 'columnstore'),(3, 'Innodb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'mariadb'),(2, 'columnstore'),(3, 'Innodb');
|
||||
SELECT RIGHT('mariadb cs', 2) FROM t1 LIMIT 1;
|
||||
RIGHT('mariadb cs', 2)
|
||||
cs
|
||||
@ -15,9 +15,9 @@ b cs
|
||||
SELECT b, RIGHT(b, 0) FROM t1 ORDER BY 1;
|
||||
b RIGHT(b, 0)
|
||||
NULL NULL
|
||||
columnstore NULL
|
||||
Innodb NULL
|
||||
mariadb NULL
|
||||
columnstore
|
||||
Innodb
|
||||
mariadb
|
||||
SELECT b, RIGHT(b, -1) FROM t1 ORDER BY 1;
|
||||
b RIGHT(b, -1)
|
||||
NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs286_db;
|
||||
CREATE DATABASE mcs286_db;
|
||||
USE mcs286_db;
|
||||
CREATE TABLE t1 (a INT, b CHAR(15))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'mariadb'),(2, 'columnstore'),(3, 'Innodb');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'mariadb'),(2, 'columnstore'),(3, 'Innodb');
|
||||
SELECT LEFT('mariadb cs', 7) FROM t1 LIMIT 1;
|
||||
LEFT('mariadb cs', 7)
|
||||
mariadb
|
||||
@ -15,9 +15,9 @@ mariadb c
|
||||
SELECT b, LEFT(b, 0) FROM t1 ORDER BY 1;
|
||||
b LEFT(b, 0)
|
||||
NULL NULL
|
||||
columnstore NULL
|
||||
Innodb NULL
|
||||
mariadb NULL
|
||||
columnstore
|
||||
Innodb
|
||||
mariadb
|
||||
SELECT b, LEFT(b, -1) FROM t1 ORDER BY 1;
|
||||
b LEFT(b, -1)
|
||||
NULL NULL
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs37_db;
|
||||
CREATE DATABASE mcs37_db;
|
||||
USE mcs37_db;
|
||||
CREATE TABLE t1(col1 INT, col2 CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES(NULL,''),(1,'a'),(1,'b'),(1,'c'),(2,'dd'),(3,'eee');
|
||||
INSERT INTO t1 VALUES(NULL, NULL),(1,'a'),(1,'b'),(1,'c'),(2,'dd'),(3,'eee');
|
||||
SELECT COUNT(DISTINCT col1) FROM t1;
|
||||
COUNT(DISTINCT col1)
|
||||
3
|
||||
|
@ -32,13 +32,13 @@ t1_int t1_char t2_int t2_char
|
||||
3 ccc 3 iii
|
||||
5 eee 5 jjj
|
||||
7 ggggg 7 kkkk
|
||||
NULL NULL NULL NULL
|
||||
NULL NULL NULL
|
||||
2 bbb NULL NULL
|
||||
4 ddd NULL NULL
|
||||
6 ffff NULL NULL
|
||||
SELECT * FROM t1 RIGHT JOIN t2 ON t1.t1_int = t2.t2_int;
|
||||
t1_int t1_char t2_int t2_char
|
||||
NULL NULL NULL NULL
|
||||
NULL NULL NULL
|
||||
1 aaa 1 hhhh
|
||||
3 ccc 3 iii
|
||||
5 eee 5 jjj
|
||||
@ -58,7 +58,7 @@ NULL
|
||||
7 ggggg
|
||||
SELECT * FROM t2;
|
||||
t2_int t2_char
|
||||
NULL NULL
|
||||
NULL
|
||||
1 hhhh
|
||||
3 iii
|
||||
5 jjj
|
||||
|
@ -58,7 +58,7 @@ NULL
|
||||
7 t
|
||||
SELECT * FROM t2;
|
||||
t2_int t2_char
|
||||
NULL NULL
|
||||
NULL
|
||||
1 sssss
|
||||
3 sssss
|
||||
5 sssss
|
||||
@ -79,7 +79,7 @@ NULL
|
||||
7 t
|
||||
SELECT * FROM t2;
|
||||
t2_int t2_char
|
||||
NULL NULL
|
||||
NULL
|
||||
1 sssss
|
||||
3 sssss
|
||||
5 sssss
|
||||
|
@ -15,7 +15,7 @@ INSERT INTO t2(t2_varchar) VALUES('bb'),('ccc'),('dddd'),('eeeee');
|
||||
SELECT * FROM t2;
|
||||
t2_int t2_varchar
|
||||
1 a
|
||||
2 a
|
||||
2
|
||||
3 bb
|
||||
4 ccc
|
||||
5 dddd
|
||||
|
@ -38,7 +38,7 @@ t1_int t1_char t2_int t2_char
|
||||
3 ccc 3 iii
|
||||
5 eee 5 jjj
|
||||
7 gggg 7 llll
|
||||
NULL NULL NULL NULL
|
||||
NULL NULL NULL
|
||||
2 bbb NULL NULL
|
||||
4 ddd NULL NULL
|
||||
6 fff NULL NULL
|
||||
@ -63,7 +63,7 @@ select `mcs63_db`.`t1`.`t1_int` AS `t1_int`,`mcs63_db`.`t1`.`t1_char` AS `t1_cha
|
||||
SELECT * FROM v4;
|
||||
t1_int t1_char t2_int t2_char
|
||||
1 aaa 1 hhh
|
||||
NULL NULL NULL NULL
|
||||
NULL NULL NULL
|
||||
2 bbb NULL NULL
|
||||
3 ccc NULL NULL
|
||||
4 ddd NULL NULL
|
||||
@ -76,7 +76,7 @@ VIEW_DEFINITION
|
||||
select `mcs63_db`.`t1`.`t1_int` AS `t1_int`,`mcs63_db`.`t1`.`t1_char` AS `t1_char`,`mcs63_db`.`t2`.`t2_int` AS `t2_int`,`mcs63_db`.`t2`.`t2_char` AS `t2_char` from (`mcs63_db`.`t2` left join `mcs63_db`.`t1` on(`mcs63_db`.`t1`.`t1_int` = `mcs63_db`.`t2`.`t2_int`))
|
||||
SELECT * FROM v5;
|
||||
t1_int t1_char t2_int t2_char
|
||||
NULL NULL NULL NULL
|
||||
NULL NULL NULL
|
||||
1 aaa 1 hhh
|
||||
3 ccc 3 iii
|
||||
5 eee 5 jjj
|
||||
@ -90,7 +90,7 @@ VIEW_DEFINITION
|
||||
select `mcs63_db`.`t1`.`t1_char` AS `t1_char`,`mcs63_db`.`t2`.`t2_char` AS `t2_char` from (`mcs63_db`.`t2` left join `mcs63_db`.`t1` on(`mcs63_db`.`t1`.`t1_int` = `mcs63_db`.`t2`.`t2_int`))
|
||||
SELECT * FROM v6;
|
||||
t1_char t2_char
|
||||
NULL NULL
|
||||
NULL
|
||||
aaa hhh
|
||||
ccc iii
|
||||
eee jjj
|
||||
@ -104,7 +104,7 @@ VIEW_DEFINITION
|
||||
select `mcs63_db`.`t1`.`t1_int` AS `t1_int`,`mcs63_db`.`t1`.`t1_char` AS `t1_char`,`mcs63_db`.`t2`.`t2_int` AS `t2_int`,`mcs63_db`.`t2`.`t2_char` AS `t2_char` from (`mcs63_db`.`t2` left join `mcs63_db`.`t1` on(`mcs63_db`.`t1`.`t1_int` = `mcs63_db`.`t2`.`t2_int` and `mcs63_db`.`t2`.`t2_int` = 5))
|
||||
SELECT * FROM v7;
|
||||
t1_int t1_char t2_int t2_char
|
||||
NULL NULL NULL NULL
|
||||
NULL NULL NULL
|
||||
NULL NULL 1 hhh
|
||||
NULL NULL 3 iii
|
||||
5 eee 5 jjj
|
||||
|
@ -6,8 +6,8 @@ GRANT ALL PRIVILEGES ON *.* TO 'cejuser'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
CREATE TABLE t1 (t1_int INT, t1_char CHAR(5))ENGINE=Innodb;
|
||||
CREATE TABLE t2 (t2_int INT, t2_char CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL,''),(1,'ddd'),(2,'bbb'),(3,'fffff'),(4,'eee'),(5,'a'),(6,'ccc'),(7,'ggg');
|
||||
INSERT INTO t2 VALUES (NULL,''),(1,'ooo'),(3,'iii'),(5,'hhh'),(7,'nnnnn'),(9,'kkkk'),(11,'mm'),(13,'j');
|
||||
INSERT INTO t1 VALUES (NULL,NULL),(1,'ddd'),(2,'bbb'),(3,'fffff'),(4,'eee'),(5,'a'),(6,'ccc'),(7,'ggg');
|
||||
INSERT INTO t2 VALUES (NULL,NULL),(1,'ooo'),(3,'iii'),(5,'hhh'),(7,'nnnnn'),(9,'kkkk'),(11,'mm'),(13,'j');
|
||||
SELECT * FROM t1, t2 WHERE t1.t1_int = t2.t2_int ORDER BY 1;
|
||||
t1_int t1_char t2_int t2_char
|
||||
1 ddd 1 ooo
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs69_db;
|
||||
CREATE DATABASE mcs69_db;
|
||||
USE mcs69_db;
|
||||
CREATE TABLE t1(t1_int INT, t1_decimal DECIMAL(5,3), t1_char CHAR(10), t1_text TEXT, t1_varchar VARCHAR(50))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES(NULL, NULL, '', '', '');
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO t1 VALUES(512762, 86.722, 'A', repeat('a',50), repeat('b',50));
|
||||
INSERT INTO t1 VALUES(-512762, -86.722, '123456', repeat('1',50), repeat('2',50));
|
||||
SELECT * FROM t1;
|
||||
|
@ -9,7 +9,7 @@ t1 CREATE TABLE `t1` (
|
||||
`t1_char` char(5) DEFAULT NULL,
|
||||
CONSTRAINT `CONSTRAINT_1` CHECK (`t1_int` > 0)
|
||||
) ENGINE=Columnstore DEFAULT CHARSET=latin1
|
||||
INSERT INTO t1 VALUES(NULL, '');
|
||||
INSERT INTO t1 VALUES(NULL, NULL);
|
||||
INSERT INTO t1 VALUES(1, 'a');
|
||||
INSERT INTO t1 VALUES(0, 'b');
|
||||
ERROR 23000: CONSTRAINT `CONSTRAINT_1` failed for `mcs74_db`.`t1`
|
||||
@ -33,7 +33,7 @@ ERROR 23000: CONSTRAINT `c1` failed for `mcs74_db`.`t2`
|
||||
SELECT * FROM t2;
|
||||
t1_char
|
||||
NULL
|
||||
NULL
|
||||
|
||||
CREATE TABLE t3(
|
||||
t3_decimal DECIMAL(5,2),
|
||||
t3_blob BLOB,
|
||||
|
@ -13,7 +13,7 @@ t1_varchar VARCHAR(255) DEFAULT 'hello world!',
|
||||
t1_datetime DATETIME
|
||||
)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES();
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, '', '', '', NULL);
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO t1 VALUES(1, 123456, 987654321, 122.32, repeat('z', 20), 'aaa', repeat('a', 20), '1111-11-11 11:11:11');
|
||||
INSERT INTO t1 VALUES(0, 1023456, 887654321, 222.32, repeat('y', 20), 'aaa', repeat('b', 20), '1111-11-11 11:11:11');
|
||||
INSERT INTO t1 VALUES(1, -123456, -987654321, -122.32, repeat('z', 20), 'bbb', repeat('a', 20), '1111-11-11 11:11:11');
|
||||
|
@ -12,7 +12,7 @@ t1_char CHAR(5),
|
||||
t1_varchar VARCHAR(255) DEFAULT 'hello world!',
|
||||
t1_datetime DATETIME
|
||||
)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, '', '', '', NULL);
|
||||
INSERT INTO t1 VALUES(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO t1 VALUES(1, 11, 987654321, 122.32, repeat('z', 20), 'aaa', repeat('a', 20), '1111-11-09 11:11:11');
|
||||
INSERT INTO t1 VALUES(0, 12, 887654321, 222.32, repeat('y', 20), 'aaa', repeat('b', 20), '1111-11-11 11:11:12');
|
||||
INSERT INTO t1 VALUES(1, -12, -987654321, -122.32, repeat('z', 20), 'bbb', repeat('a', 20), '1111-11-10 11:11:10');
|
||||
|
@ -8,8 +8,8 @@ CREATE TABLE t1 (t1_int INT, t1_char CHAR(5))ENGINE=Columnstore;
|
||||
CREATE TABLE t2 (t2_int INT, t2_char CHAR(5))ENGINE=Columnstore;
|
||||
CREATE TABLE t3 (t3_int INT, t3_char CHAR(5))ENGINE=Innodb;
|
||||
CREATE TABLE t4 (t4_int INT, t4_char CHAR(5))ENGINE=Myisam;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, ''),(7, 'eee');
|
||||
INSERT INTO t2 VALUES (NULL, ''),(1, 'eee'),(3, 'ccc'),(5, 'jjj'),(6, ''),(7, 'lll'),(9, 'eee'),(11, 'nnn');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, ''),(7, 'eee');
|
||||
INSERT INTO t2 VALUES (NULL, NULL),(1, 'eee'),(3, 'ccc'),(5, 'jjj'),(6, ''),(7, 'lll'),(9, 'eee'),(11, 'nnn');
|
||||
INSERT INTO t3 SELECT * FROM t2;
|
||||
INSERT INTO t4 SELECT * FROM t1;
|
||||
SELECT t1_int FROM t1 WHERE EXISTS (SELECT t2_int FROM t2 WHERE t1.t1_int = t2.t2_int) ORDER BY 1;
|
||||
@ -29,7 +29,7 @@ t2_int t2_char
|
||||
1 eee
|
||||
3 ccc
|
||||
5 jjj
|
||||
6 NULL
|
||||
6
|
||||
7 lll
|
||||
SELECT t1_char FROM t1 WHERE NOT EXISTS (SELECT t2_int FROM t2 WHERE t1.t1_int = t2.t2_int) ORDER BY t1_char;
|
||||
t1_char
|
||||
@ -39,7 +39,7 @@ ddd
|
||||
SELECT t1_char FROM t1 WHERE EXISTS (SELECT 1 FROM t2 WHERE t2_int IS NULL) ORDER BY 1;
|
||||
t1_char
|
||||
NULL
|
||||
NULL
|
||||
|
||||
aaa
|
||||
aaa
|
||||
aaa
|
||||
@ -48,7 +48,7 @@ ddd
|
||||
eee
|
||||
SELECT t1_char, t1_int FROM t1 WHERE EXISTS (SELECT 1 FROM t2 WHERE t2_int IS NULL) AND t1_int > 5 ORDER BY 1;
|
||||
t1_char t1_int
|
||||
NULL 6
|
||||
6
|
||||
eee 7
|
||||
SELECT t1_int FROM t1 WHERE EXISTS (SELECT t3_int FROM t3 WHERE t1.t1_int = t3.t3_int);
|
||||
t1_int
|
||||
|
@ -2,7 +2,7 @@ DROP DATABASE IF EXISTS mcs81_db;
|
||||
CREATE DATABASE mcs81_db;
|
||||
USE mcs81_db;
|
||||
CREATE TABLE t1 (t1_col1 INT, t1_col2 TEXT)ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, '');
|
||||
INSERT INTO t1 VALUES (NULL, NULL);
|
||||
INSERT INTO t1 VALUES (1, repeat('a', 20)),(3, repeat('c', 20)),(5, repeat('a', 20)),(7, repeat('c', 20)),(9, repeat('a', 20));
|
||||
SELECT * FROM t1 AS a, t1 AS b WHERE a.t1_col1 = b.t1_col1;
|
||||
t1_col1 t1_col2 t1_col1 t1_col2
|
||||
|
@ -3,8 +3,8 @@ CREATE DATABASE mcs82_db;
|
||||
USE mcs82_db;
|
||||
CREATE TABLE t1 (t1_int INT, t1_char CHAR(5))ENGINE=Columnstore;
|
||||
CREATE TABLE t2 (t2_int INT, t2_char CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'bbb'),(3, 'ccc'),(4, 'ddd'),(5, 'aa'),(6, ''),(7, 'aaaaa');
|
||||
INSERT INTO t2 VALUES (NULL, ''),(1, 'hhhh'),(3, 'iii'),(5, 'jjj'),(6, ''),(7, 'lll'),(9, 'm'),(11, 'nnn');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'bbb'),(3, 'ccc'),(4, 'ddd'),(5, 'aa'),(6, ''),(7, 'aaaaa');
|
||||
INSERT INTO t2 VALUES (NULL, NULL),(1, 'hhhh'),(3, 'iii'),(5, 'jjj'),(6, ''),(7, 'lll'),(9, 'm'),(11, 'nnn');
|
||||
SELECT * FROM t1 ORDER BY t1_int;
|
||||
t1_int t1_char
|
||||
NULL NULL
|
||||
@ -13,7 +13,7 @@ NULL NULL
|
||||
3 ccc
|
||||
4 ddd
|
||||
5 aa
|
||||
6 NULL
|
||||
6
|
||||
7 aaaaa
|
||||
UPDATE t1 JOIN t2 on t1.t1_int=t2.t2_int SET t1.t1_char='sssss';
|
||||
SELECT * FROM t1 ORDER BY t1_int;
|
||||
@ -44,7 +44,7 @@ NULL NULL
|
||||
1 hhhh
|
||||
3 iii
|
||||
5 jjj
|
||||
6 NULL
|
||||
6
|
||||
7 lll
|
||||
9 m
|
||||
11 nnn
|
||||
|
@ -3,8 +3,8 @@ CREATE DATABASE mcs83_db;
|
||||
USE mcs83_db;
|
||||
CREATE TABLE t1 (t1_int INT, t1_char CHAR(5))ENGINE=Columnstore;
|
||||
CREATE TABLE t2 (t2_int INT, t2_char CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'bbb'),(3, 'ccc'),(4, 'ddd'),(5, 'aa'),(6, ''),(7, 'aaaaa');
|
||||
INSERT INTO t2 VALUES (NULL, ''),(1, 'hhhh'),(3, 'iii'),(5, 'jjj'),(6, ''),(7, 'lll'),(9, 'm'),(11, 'nnn');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'bbb'),(3, 'ccc'),(4, 'ddd'),(5, 'aa'),(6, ''),(7, 'aaaaa');
|
||||
INSERT INTO t2 VALUES (NULL, NULL),(1, 'hhhh'),(3, 'iii'),(5, 'jjj'),(6, ''),(7, 'lll'),(9, 'm'),(11, 'nnn');
|
||||
SELECT * FROM t1 ORDER BY t1_int;
|
||||
t1_int t1_char
|
||||
NULL NULL
|
||||
@ -13,7 +13,7 @@ NULL NULL
|
||||
3 ccc
|
||||
4 ddd
|
||||
5 aa
|
||||
6 NULL
|
||||
6
|
||||
7 aaaaa
|
||||
SELECT * FROM t2 ORDER BY t2_int;
|
||||
t2_int t2_char
|
||||
@ -21,7 +21,7 @@ NULL NULL
|
||||
1 hhhh
|
||||
3 iii
|
||||
5 jjj
|
||||
6 NULL
|
||||
6
|
||||
7 lll
|
||||
9 m
|
||||
11 nnn
|
||||
@ -32,14 +32,14 @@ NULL NULL
|
||||
2 bbb
|
||||
3 ccc
|
||||
4 ddd
|
||||
6 NULL
|
||||
6
|
||||
DELETE t2 FROM t2 LEFT JOIN t1 ON t1.t1_int=t2.t2_int WHERE t2.t2_int IS NULL;
|
||||
SELECT * FROM t2 ORDER BY t2_int;
|
||||
t2_int t2_char
|
||||
1 hhhh
|
||||
3 iii
|
||||
5 jjj
|
||||
6 NULL
|
||||
6
|
||||
7 lll
|
||||
9 m
|
||||
11 nnn
|
||||
|
@ -5,7 +5,7 @@ CREATE USER IF NOT EXISTS 'cejuser'@'localhost' IDENTIFIED BY 'Vagrant1|0000001'
|
||||
GRANT ALL PRIVILEGES ON *.* TO 'cejuser'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
CREATE TABLE t1 (a INT, b CHAR(5))ENGINE=Columnstore;
|
||||
INSERT INTO t1 VALUES (NULL, ''),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
INSERT INTO t1 VALUES (NULL, NULL),(1, 'aaa'),(2, 'aaa'),(3, 'ccc'),(4, 'ddd'),(5, 'aaa'),(6, 'ddd'),(7, 'eee');
|
||||
SELECT * FROM t1;
|
||||
a b
|
||||
NULL NULL
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user