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
Merge pull request #2040 from tntnatbry/MCOL-641-move-mtr-tests
MCOL-641 Move MTR tests from future/ to basic/
This commit is contained in:
499
mysql-test/columnstore/basic/r/mcol641-aggregate.result
Normal file
499
mysql-test/columnstore/basic/r/mcol641-aggregate.result
Normal file
@ -0,0 +1,499 @@
|
||||
DROP DATABASE IF EXISTS test_mcol641_aggregate;
|
||||
CREATE DATABASE test_mcol641_aggregate;
|
||||
USE test_mcol641_aggregate;
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
DROP TABLE IF EXISTS cs5;
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(19), d2 DECIMAL(19,10), d3 DECIMAL(19,19), d4 DECIMAL(19),d5 DECIMAL(19),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(19) UNSIGNED, d2 DECIMAL(19,10) UNSIGNED, d3 DECIMAL(19,19) UNSIGNED, d4 DECIMAL(19) UNSIGNED,d5 DECIMAL(19),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs5(d DECIMAL(25,19)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(1234,5678,-0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,-5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(-123456789123456789,-5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
INSERT INTO cs2 VALUES
|
||||
(1234,5678,0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(123456789123456789123,5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
INSERT INTO cs3 VALUES
|
||||
(1234,5678,-0.12345678901234,2,1,1),
|
||||
(1234,-5678,0.12345678901234,2,1,1),
|
||||
(12345678901,12345678.90128,0.1234567890123,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.12345678901234,3,2,2),
|
||||
(-1234567899,-5678,0.1234567890123,3,2,2),
|
||||
(12345678901,12345678.9012,0.1234567890123,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2);
|
||||
INSERT INTO cs4 VALUES
|
||||
(1234,5678,0.12345678901234,2,1,1),
|
||||
(1234,5678,0.12345678901234,2,1,1),
|
||||
(12345678901,12345678.90128,0.1234567890123,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.12345678901234,3,2,2),
|
||||
(1234567899,5678,0.1234567890123,3,2,2),
|
||||
(12345678901,12345678.90123,0.1234567890123,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2);
|
||||
SELECT "sum(38)_test1", sum(d1),sum(d2),sum(d3) FROM cs1;
|
||||
sum(38)_test1 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_test1 24691234345680012331639 2469135780246935707281.8024691356 0.12345678901234567290123327780032580000
|
||||
SELECT "avg(38)_test1", avg(d1),avg(d2),avg(d3) FROM cs1;
|
||||
avg(38)_test1 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_test1 2244657667789092030149.0000 224466889113357791571.07295173960000 0.01122334445566778844556666161821143636
|
||||
SELECT "count(38)_test1", count(d1),count(d2),count(d3) FROM cs1;
|
||||
count(38)_test1 count(d1) count(d2) count(d3)
|
||||
count(38)_test1 11 11 11
|
||||
SELECT "min(38)_test1", min(d1),min(d2),min(d3) FROM cs1;
|
||||
min(38)_test1 min(d1) min(d2) min(d3)
|
||||
min(38)_test1 -123456789123456789 -5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
SELECT "max(38)_test1", max(d1),max(d2),max(d3) FROM cs1;
|
||||
max(38)_test1 max(d1) max(d2) max(d3)
|
||||
max(38)_test1 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
SELECT "group_concat(38)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs1;
|
||||
group_concat(38)_test1 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_test1 -123456789123456789,0,0,1234,1234,1234,1234,1234,1234,12345678901234567890123,12345678901234567890901 -5678.0000000000,-5678.0000000000,0.0000000000,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,1234567890123456789012.9012345678,1234567890123478901234.9012345678 -0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,0.00000000000000000000000000000000000000,0.00000000000000000000000000000000000000,0.12345678901234567345678901234567800000,0.12345678901234567834567890123456780000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000,0.12345678901234567890123456789080000000
|
||||
SELECT "count(distinct 38)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs1;
|
||||
count(distinct 38)_test1 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test1 5 5 7
|
||||
SELECT "sum(38)_test1", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
sum(38)_test1 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_test1 24691234345680012331639 2469135780246935707281.8024691356 0.12345678901234567290123327780032580000
|
||||
SELECT "avg(38)_test1", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
avg(38)_test1 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_test1 2244657667789092030149.0000 224466889113357791571.07295173960000 0.01122334445566778844556666161821143636
|
||||
SELECT "count(38)_test1", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
count(38)_test1 count(d1) count(d2) count(d3)
|
||||
count(38)_test1 11 11 11
|
||||
SELECT "min(38)_test1", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
min(38)_test1 min(d1) min(d2) min(d3)
|
||||
min(38)_test1 -123456789123456789 -5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
SELECT "max(38)_test1", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
max(38)_test1 max(d1) max(d2) max(d3)
|
||||
max(38)_test1 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
SELECT "group_concat(38)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
group_concat(38)_test1 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_test1 -123456789123456789,0,0,1234,1234,1234,1234,1234,1234,12345678901234567890123,12345678901234567890901 -5678.0000000000,-5678.0000000000,0.0000000000,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,1234567890123456789012.9012345678,1234567890123478901234.9012345678 -0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,0.00000000000000000000000000000000000000,0.00000000000000000000000000000000000000,0.12345678901234567345678901234567800000,0.12345678901234567834567890123456780000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000,0.12345678901234567890123456789080000000
|
||||
SELECT "count(distinct 38)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
count(distinct 38)_test1 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test1 5 5 7
|
||||
SELECT "sum(38)_GB(38)_test1" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
sum(38)_GB(38)_test1 d4 d5 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(38)_test1 2 1 12345678901234567892591 1234567890123456789012.9012345678 0.12345678901234567890123449999982000000
|
||||
sum(38)_GB(38)_test1 3 2 12345555444445444435346 1234567890123478901234.9012345678 0.37037036703703703070370248147104580000
|
||||
sum(38)_GB(38)_test1 11111111111111111111111111111111 1 2468 11356.0000000000 -0.24691357802469135780246913578036000000
|
||||
sum(38)_GB(38)_test1 11111111111111111111111111111112 1 1234 5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
SELECT "avg(38)_GB(38)_test1" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
avg(38)_GB(38)_test1 d4 d5 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(38)_test1 2 1 3086419725308641973147.7500 308641972530864197253.22530864195000 0.03086419725308641972530862499995500000
|
||||
avg(38)_GB(38)_test1 3 2 3086388861111361108836.5000 308641972530869725308.72530864195000 0.09259259175925925767592562036776145000
|
||||
avg(38)_GB(38)_test1 11111111111111111111111111111111 1 1234.0000 5678.00000000000000 -0.12345678901234567890123456789018000000
|
||||
avg(38)_GB(38)_test1 11111111111111111111111111111112 1 1234.0000 5678.00000000000000 -0.12345678901234567890123456789018000000
|
||||
SELECT "count(38)_GB(38)_test1" ,d4,d5,count(d1),count(d2),count(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(38)_GB(38)_test1 d4 d5 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(38)_test1 2 1 4 4 4
|
||||
count(38)_GB(38)_test1 3 2 4 4 4
|
||||
count(38)_GB(38)_test1 11111111111111111111111111111111 1 2 2 2
|
||||
count(38)_GB(38)_test1 11111111111111111111111111111112 1 1 1 1
|
||||
SELECT "min(38)_GB(38)_test1" ,d4,d5,min(d1),min(d2),min(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
min(38)_GB(38)_test1 d4 d5 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(38)_test1 2 1 0 -5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
min(38)_GB(38)_test1 3 2 -123456789123456789 -5678.0000000000 0.00000000000000000000000000000000000000
|
||||
min(38)_GB(38)_test1 11111111111111111111111111111111 1 1234 5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
min(38)_GB(38)_test1 11111111111111111111111111111112 1 1234 5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
SELECT "max(38)_GB(38)_test1" ,d4,d5,max(d1),max(d2),max(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
max(38)_GB(38)_test1 d4 d5 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(38)_test1 2 1 12345678901234567890123 1234567890123456789012.9012345678 0.12345678901234567890123456789000000000
|
||||
max(38)_GB(38)_test1 3 2 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
max(38)_GB(38)_test1 11111111111111111111111111111111 1 1234 5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
max(38)_GB(38)_test1 11111111111111111111111111111112 1 1234 5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
SELECT "group_concat(38)_GB(38)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2;
|
||||
group_concat(38)_GB(38)_test1 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(38)_test1 -123456789123456789,0,1234,12345678901234567890901 -5678.0000000000,0.0000000000,5678.0000000000,1234567890123478901234.9012345678 0.00000000000000000000000000000000000000,0.12345678901234567345678901234567800000,0.12345678901234567834567890123456780000,0.12345678901234567890123456789080000000
|
||||
group_concat(38)_GB(38)_test1 0,1234,1234,12345678901234567890123 -5678.0000000000,0.0000000000,5678.0000000000,1234567890123456789012.9012345678 -0.12345678901234567890123456789018000000,0.00000000000000000000000000000000000000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000
|
||||
group_concat(38)_GB(38)_test1 1234 5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
group_concat(38)_GB(38)_test1 1234,1234 5678.0000000000,5678.0000000000 -0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000
|
||||
SELECT "count(distinct 38)_GB(38)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(38)_test1 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(38)_test1 1 1 1
|
||||
count(distinct 38)_GB(38)_test1 1 1 1
|
||||
count(distinct 38)_GB(38)_test1 3 4 4
|
||||
count(distinct 38)_GB(38)_test1 4 4 4
|
||||
SELECT "sum(38)_GB(8)_test1" ,i1,sum(d1),sum(d2),sum(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
sum(38)_GB(8)_test1 i1 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(8)_test1 1 12345678901234567896293 1234567890123456806046.9012345678 -0.24691357802469135780246920367072000000
|
||||
sum(38)_GB(8)_test1 2 12345555444445444435346 1234567890123478901234.9012345678 0.37037036703703703070370248147104580000
|
||||
SELECT "avg(38)_GB(8)_test1" ,i1,avg(d1),avg(d2),avg(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
avg(38)_GB(8)_test1 i1 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(8)_test1 1 1763668414462081128041.8571 176366841446208115149.55731922397143 -0.03527336828924162254320988623867428571
|
||||
avg(38)_GB(8)_test1 2 3086388861111361108836.5000 308641972530869725308.72530864195000 0.09259259175925925767592562036776145000
|
||||
SELECT "count(38)_GB(8)_test1" ,i1,count(d1),count(d2),count(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
count(38)_GB(8)_test1 i1 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(8)_test1 1 7 7 7
|
||||
count(38)_GB(8)_test1 2 4 4 4
|
||||
SELECT "min(38)_GB(8)_test1" ,i1,min(d1),min(d2),min(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
min(38)_GB(8)_test1 i1 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(8)_test1 1 0 -5678.0000000000 -0.12345678901234567890123456789018000000
|
||||
min(38)_GB(8)_test1 2 -123456789123456789 -5678.0000000000 0.00000000000000000000000000000000000000
|
||||
SELECT "max(38)_GB(8)_test1" ,i1,max(d1),max(d2),max(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
max(38)_GB(8)_test1 i1 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(8)_test1 1 12345678901234567890123 1234567890123456789012.9012345678 0.12345678901234567890123456789000000000
|
||||
max(38)_GB(8)_test1 2 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
SELECT "group_concat(38)_GB(8)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
group_concat(38)_GB(8)_test1 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(8)_test1 -123456789123456789,0,1234,12345678901234567890901 -5678.0000000000,0.0000000000,5678.0000000000,1234567890123478901234.9012345678 0.00000000000000000000000000000000000000,0.12345678901234567345678901234567800000,0.12345678901234567834567890123456780000,0.12345678901234567890123456789080000000
|
||||
group_concat(38)_GB(8)_test1 0,1234,1234,1234,1234,1234,12345678901234567890123 -5678.0000000000,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,1234567890123456789012.9012345678 -0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,-0.12345678901234567890123456789018000000,0.00000000000000000000000000000000000000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000
|
||||
SELECT "count(distinct 38)_GB(8)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
count(distinct 38)_GB(8)_test1 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(8)_test1 3 4 4
|
||||
count(distinct 38)_GB(8)_test1 4 4 4
|
||||
SELECT "sum(38)_test2", sum(d1),sum(d2),sum(d3) FROM cs2;
|
||||
sum(38)_test2 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_test2 24814814591592592577551 2469135780246935729993.8024691356 1.11111110111111110411110982092176580000
|
||||
SELECT "avg(38)_test2", avg(d1),avg(d2),avg(d3) FROM cs2;
|
||||
avg(38)_test2 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_test2 2255892235599326597959.1818 224466889113357793635.80022446687273 0.10101010010101010037373725644743325455
|
||||
SELECT "count(38)_test2", count(d1),count(d2),count(d3) FROM cs2;
|
||||
count(38)_test2 count(d1) count(d2) count(d3)
|
||||
count(38)_test2 11 11 11
|
||||
SELECT "min(38)_test2", min(d1),min(d2),min(d3) FROM cs2;
|
||||
min(38)_test2 min(d1) min(d2) min(d3)
|
||||
min(38)_test2 0 0.0000000000 0.00000000000000000000000000000000000000
|
||||
SELECT "max(38)_test2", max(d1),max(d2),max(d3) FROM cs2;
|
||||
max(38)_test2 max(d1) max(d2) max(d3)
|
||||
max(38)_test2 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
SELECT "group_concat(38)_test2", group_concat(d1),group_concat(d2),group_concat(d3) FROM cs2;
|
||||
group_concat(38)_test2 group_concat(d1) group_concat(d2) group_concat(d3)
|
||||
group_concat(38)_test2 1234,1234,12345678901234567890123,0,1234,123456789123456789123,12345678901234567890901,0,1234,1234,1234 5678.0000000000,5678.0000000000,1234567890123456789012.9012345678,0.0000000000,5678.0000000000,5678.0000000000,1234567890123478901234.9012345678,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000 0.12345678901234567890123456789018000000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000,0.00000000000000000000000000000000000000,0.12345678901234567834567890123456780000,0.12345678901234567345678901234567800000,0.12345678901234567890123456789080000000,0.00000000000000000000000000000000000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000
|
||||
SELECT "count(distinct 38)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs2;
|
||||
count(distinct 38)_test2 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test2 5 4 7
|
||||
SELECT "sum(38)_test2", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
sum(38)_test2 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_test2 24814814591592592577551 2469135780246935729993.8024691356 1.11111110111111110411110982092176580000
|
||||
SELECT "avg(38)_test2", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
avg(38)_test2 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_test2 2255892235599326597959.1818 224466889113357793635.80022446687273 0.10101010010101010037373725644743325455
|
||||
SELECT "count(38)_test2", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
count(38)_test2 count(d1) count(d2) count(d3)
|
||||
count(38)_test2 11 11 11
|
||||
SELECT "min(38)_test2", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
min(38)_test2 min(d1) min(d2) min(d3)
|
||||
min(38)_test2 0 0.0000000000 0.00000000000000000000000000000000000000
|
||||
SELECT "max(38)_test2", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
max(38)_test2 max(d1) max(d2) max(d3)
|
||||
max(38)_test2 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
SELECT "group_concat(38)_test2", group_concat(d1),group_concat(d2),group_concat(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
group_concat(38)_test2 group_concat(d1) group_concat(d2) group_concat(d3)
|
||||
group_concat(38)_test2 1234,1234,12345678901234567890123,0,1234,123456789123456789123,12345678901234567890901,0,1234,1234,1234 5678.0000000000,5678.0000000000,1234567890123456789012.9012345678,0.0000000000,5678.0000000000,5678.0000000000,1234567890123478901234.9012345678,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000 0.12345678901234567890123456789018000000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000,0.00000000000000000000000000000000000000,0.12345678901234567834567890123456780000,0.12345678901234567345678901234567800000,0.12345678901234567890123456789080000000,0.00000000000000000000000000000000000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000
|
||||
SELECT "count(distinct 38)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
count(distinct 38)_test2 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test2 5 4 7
|
||||
SELECT "sum(38)_GB(38)_test2" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
sum(38)_GB(38)_test2 d4 d5 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(38)_test2 2 1 12345678901234567892591 1234567890123456800368.9012345678 0.37037036703703703670370363578018000000
|
||||
sum(38)_GB(38)_test2 3 2 12469135690358024681258 1234567890123478912590.9012345678 0.37037036703703703070370248147104580000
|
||||
sum(38)_GB(38)_test2 11111111111111111111111111111111 1 2468 11356.0000000000 0.24691357802469135780246913578036000000
|
||||
sum(38)_GB(38)_test2 11111111111111111111111111111112 1 1234 5678.0000000000 0.12345678901234567890123456789018000000
|
||||
SELECT "avg(38)_GB(38)_test2" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
avg(38)_GB(38)_test2 d4 d5 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(38)_test2 2 1 3086419725308641973147.7500 308641972530864200092.22530864195000 0.09259259175925925917592590894504500000
|
||||
avg(38)_GB(38)_test2 3 2 3117283922589506170314.5000 308641972530869728147.72530864195000 0.09259259175925925767592562036776145000
|
||||
avg(38)_GB(38)_test2 11111111111111111111111111111111 1 1234.0000 5678.00000000000000 0.12345678901234567890123456789018000000
|
||||
avg(38)_GB(38)_test2 11111111111111111111111111111112 1 1234.0000 5678.00000000000000 0.12345678901234567890123456789018000000
|
||||
SELECT "count(38)_GB(38)_test2" ,d4,d5,count(d1),count(d2),count(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(38)_GB(38)_test2 d4 d5 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(38)_test2 2 1 4 4 4
|
||||
count(38)_GB(38)_test2 3 2 4 4 4
|
||||
count(38)_GB(38)_test2 11111111111111111111111111111111 1 2 2 2
|
||||
count(38)_GB(38)_test2 11111111111111111111111111111112 1 1 1 1
|
||||
SELECT "min(38)_GB(38)_test2" ,d4,d5,min(d1),min(d2),min(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
min(38)_GB(38)_test2 d4 d5 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(38)_test2 2 1 0 0.0000000000 0.00000000000000000000000000000000000000
|
||||
min(38)_GB(38)_test2 3 2 0 0.0000000000 0.00000000000000000000000000000000000000
|
||||
min(38)_GB(38)_test2 11111111111111111111111111111111 1 1234 5678.0000000000 0.12345678901234567890123456789018000000
|
||||
min(38)_GB(38)_test2 11111111111111111111111111111112 1 1234 5678.0000000000 0.12345678901234567890123456789018000000
|
||||
SELECT "max(38)_GB(38)_test2" ,d4,d5,max(d1),max(d2),max(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
max(38)_GB(38)_test2 d4 d5 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(38)_test2 2 1 12345678901234567890123 1234567890123456789012.9012345678 0.12345678901234567890123456789018000000
|
||||
max(38)_GB(38)_test2 3 2 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
max(38)_GB(38)_test2 11111111111111111111111111111111 1 1234 5678.0000000000 0.12345678901234567890123456789018000000
|
||||
max(38)_GB(38)_test2 11111111111111111111111111111112 1 1234 5678.0000000000 0.12345678901234567890123456789018000000
|
||||
SELECT "group_concat(38)_GB(38)_test2", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
group_concat(38)_GB(38)_test2 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(38)_test2 0,1234,1234,12345678901234567890123 0.0000000000,5678.0000000000,5678.0000000000,1234567890123456789012.9012345678 0.00000000000000000000000000000000000000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789000000000,0.12345678901234567890123456789018000000
|
||||
group_concat(38)_GB(38)_test2 0,1234,123456789123456789123,12345678901234567890901 0.0000000000,5678.0000000000,5678.0000000000,1234567890123478901234.9012345678 0.00000000000000000000000000000000000000,0.12345678901234567345678901234567800000,0.12345678901234567834567890123456780000,0.12345678901234567890123456789080000000
|
||||
group_concat(38)_GB(38)_test2 1234 5678.0000000000 0.12345678901234567890123456789018000000
|
||||
group_concat(38)_GB(38)_test2 1234,1234 5678.0000000000,5678.0000000000 0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000
|
||||
SELECT "count(distinct 38)_GB(38)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(38)_test2 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(38)_test2 1 1 1
|
||||
count(distinct 38)_GB(38)_test2 1 1 1
|
||||
count(distinct 38)_GB(38)_test2 3 3 4
|
||||
count(distinct 38)_GB(38)_test2 4 3 4
|
||||
SELECT "sum(38)_GB(8)_test2" ,i1,sum(d1),sum(d2),sum(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
sum(38)_GB(8)_test2 i1 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(8)_test2 1 12345678901234567896293 1234567890123456817402.9012345678 0.74074073407407407340740733945072000000
|
||||
sum(38)_GB(8)_test2 2 12469135690358024681258 1234567890123478912590.9012345678 0.37037036703703703070370248147104580000
|
||||
SELECT "avg(38)_GB(8)_test2" ,i1,avg(d1),avg(d2),avg(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
avg(38)_GB(8)_test2 i1 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(8)_test2 1 1763668414462081128041.8571 176366841446208116771.84303350968571 0.10582010486772486762962961992153142857
|
||||
avg(38)_GB(8)_test2 2 3117283922589506170314.5000 308641972530869728147.72530864195000 0.09259259175925925767592562036776145000
|
||||
SELECT "count(38)_GB(8)_test2" ,i1,count(d1),count(d2),count(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
count(38)_GB(8)_test2 i1 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(8)_test2 1 7 7 7
|
||||
count(38)_GB(8)_test2 2 4 4 4
|
||||
SELECT "min(38)_GB(8)_test2" ,i1,min(d1),min(d2),min(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
min(38)_GB(8)_test2 i1 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(8)_test2 1 0 0.0000000000 0.00000000000000000000000000000000000000
|
||||
min(38)_GB(8)_test2 2 0 0.0000000000 0.00000000000000000000000000000000000000
|
||||
SELECT "max(38)_GB(8)_test2" ,i1,max(d1),max(d2),max(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
max(38)_GB(8)_test2 i1 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(8)_test2 1 12345678901234567890123 1234567890123456789012.9012345678 0.12345678901234567890123456789018000000
|
||||
max(38)_GB(8)_test2 2 12345678901234567890901 1234567890123478901234.9012345678 0.12345678901234567890123456789080000000
|
||||
SELECT "group_concat(38)_GB(8)_test2", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d1),group_concat(d3 ORDER BY d1) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
group_concat(38)_GB(8)_test2 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d1) group_concat(d3 ORDER BY d1)
|
||||
group_concat(38)_GB(8)_test2 0,1234,1234,1234,1234,1234,12345678901234567890123 0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,1234567890123456789012.9012345678 0.00000000000000000000000000000000000000,0.12345678901234567890123450000000000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789018000000,0.12345678901234567890123456789000000000
|
||||
group_concat(38)_GB(8)_test2 0,1234,123456789123456789123,12345678901234567890901 0.0000000000,5678.0000000000,5678.0000000000,1234567890123478901234.9012345678 0.00000000000000000000000000000000000000,0.12345678901234567834567890123456780000,0.12345678901234567345678901234567800000,0.12345678901234567890123456789080000000
|
||||
SELECT "count(distinct 38)_GB(8)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(8)_test2 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(8)_test2 3 3 4
|
||||
count(distinct 38)_GB(8)_test2 4 3 4
|
||||
SELECT "sum(19)_test3", sum(d1),sum(d2),sum(d3) FROM cs3;
|
||||
sum(19)_test3 sum(d1) sum(d2) sum(d3)
|
||||
sum(19)_test3 23456793605 24691357.8024800000 0.4938271560492400000
|
||||
SELECT "avg(19)_test3", avg(d1),avg(d2),avg(d3) FROM cs3;
|
||||
avg(19)_test3 avg(d1) avg(d2) avg(d3)
|
||||
avg(19)_test3 2932099200.6250 3086419.72531000000000 0.06172839450615500000000
|
||||
SELECT "count(19)_test3", count(d1),count(d2),count(d3) FROM cs3;
|
||||
count(19)_test3 count(d1) count(d2) count(d3)
|
||||
count(19)_test3 8 8 8
|
||||
SELECT "min(19)_test3", min(d1),min(d2),min(d3) FROM cs3;
|
||||
min(19)_test3 min(d1) min(d2) min(d3)
|
||||
min(19)_test3 -1234567899 -5678.0000000000 -0.1234567890123400000
|
||||
SELECT "max(19)_test3", max(d1),max(d2),max(d3) FROM cs3;
|
||||
max(19)_test3 max(d1) max(d2) max(d3)
|
||||
max(19)_test3 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d1),group_concat(d3 ORDER BY d1) FROM cs3;
|
||||
group_concat(38)_test3 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d1) group_concat(d3 ORDER BY d1)
|
||||
group_concat(38)_test3 -1234567899,0,0,1234,1234,1234,12345678901,12345678901 -5678.0000000000,0.0000000000,0.0000000000,5678.0000000000,-5678.0000000000,5678.0000000000,12345678.9012000000,12345678.9012800000 0.1234567890123000000,0.0000000000000000000,0.0000000000000000000,0.1234567890123400000,0.1234567890123400000,-0.1234567890123400000,0.1234567890123000000,0.1234567890123000000
|
||||
SELECT "count(distinct 38)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs3;
|
||||
count(distinct 38)_test3 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test3 4 5 4
|
||||
SELECT "sum(19)_test3", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
sum(19)_test3 sum(d1) sum(d2) sum(d3)
|
||||
sum(19)_test3 23456793605 24691357.8024800000 0.4938271560492400000
|
||||
SELECT "avg(19)_test3", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
avg(19)_test3 avg(d1) avg(d2) avg(d3)
|
||||
avg(19)_test3 2932099200.6250 3086419.72531000000000 0.06172839450615500000000
|
||||
SELECT "count(19)_test3", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
count(19)_test3 count(d1) count(d2) count(d3)
|
||||
count(19)_test3 8 8 8
|
||||
SELECT "min(19)_test3", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
min(19)_test3 min(d1) min(d2) min(d3)
|
||||
min(19)_test3 -1234567899 -5678.0000000000 -0.1234567890123400000
|
||||
SELECT "max(19)_test3", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
max(19)_test3 max(d1) max(d2) max(d3)
|
||||
max(19)_test3 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
group_concat(38)_test3 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_test3 -1234567899,0,0,1234,1234,1234,12345678901,12345678901 -5678.0000000000,-5678.0000000000,0.0000000000,0.0000000000,5678.0000000000,5678.0000000000,12345678.9012000000,12345678.9012800000 -0.1234567890123400000,0.0000000000000000000,0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
count(distinct 38)_test3 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test3 4 5 4
|
||||
SELECT "sum(38)_GB(38)_test3" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
sum(38)_GB(38)_test3 d4 d5 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(38)_test3 2 1 12345681369 12345678.9012800000 0.1234567890123000000
|
||||
sum(38)_GB(38)_test3 3 2 11111112236 12345678.9012000000 0.3703703670369400000
|
||||
SELECT "avg(38)_GB(38)_test3" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
avg(38)_GB(38)_test3 d4 d5 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(38)_test3 2 1 3086420342.2500 3086419.72532000000000 0.03086419725307500000000
|
||||
avg(38)_GB(38)_test3 3 2 2777778059.0000 3086419.72530000000000 0.09259259175923500000000
|
||||
SELECT "count(38)_GB(38)_test3" ,d4,d5,count(d1),count(d2),count(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(38)_GB(38)_test3 d4 d5 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(38)_test3 2 1 4 4 4
|
||||
count(38)_GB(38)_test3 3 2 4 4 4
|
||||
SELECT "min(38)_GB(38)_test3" ,d4,d5,min(d1),min(d2),min(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
min(38)_GB(38)_test3 d4 d5 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(38)_test3 2 1 0 -5678.0000000000 -0.1234567890123400000
|
||||
min(38)_GB(38)_test3 3 2 -1234567899 -5678.0000000000 0.0000000000000000000
|
||||
SELECT "max(38)_GB(38)_test3" ,d4,d5,max(d1),max(d2),max(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
max(38)_GB(38)_test3 d4 d5 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(38)_test3 2 1 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
max(38)_GB(38)_test3 3 2 12345678901 12345678.9012000000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_GB(38)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
group_concat(38)_GB(38)_test3 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(38)_test3 -1234567899,0,1234,12345678901 -5678.0000000000,0.0000000000,5678.0000000000,12345678.9012000000 0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000
|
||||
group_concat(38)_GB(38)_test3 0,1234,1234,12345678901 -5678.0000000000,0.0000000000,5678.0000000000,12345678.9012800000 -0.1234567890123400000,0.0000000000000000000,0.1234567890123000000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_GB(38)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(38)_test3 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(38)_test3 3 4 4
|
||||
count(distinct 38)_GB(38)_test3 4 4 3
|
||||
SELECT "sum(38)_GB(8)_test3" ,i1,sum(d1),sum(d2),sum(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
sum(38)_GB(8)_test3 i1 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(8)_test3 1 12345681369 12345678.9012800000 0.1234567890123000000
|
||||
sum(38)_GB(8)_test3 2 11111112236 12345678.9012000000 0.3703703670369400000
|
||||
SELECT "avg(38)_GB(8)_test3" ,i1,avg(d1),avg(d2),avg(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
avg(38)_GB(8)_test3 i1 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(8)_test3 1 3086420342.2500 3086419.72532000000000 0.03086419725307500000000
|
||||
avg(38)_GB(8)_test3 2 2777778059.0000 3086419.72530000000000 0.09259259175923500000000
|
||||
SELECT "count(38)_GB(8)_test3" ,i1,count(d1),count(d2),count(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
count(38)_GB(8)_test3 i1 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(8)_test3 1 4 4 4
|
||||
count(38)_GB(8)_test3 2 4 4 4
|
||||
SELECT "min(38)_GB(8)_test3" ,i1,min(d1),min(d2),min(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
min(38)_GB(8)_test3 i1 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(8)_test3 1 0 -5678.0000000000 -0.1234567890123400000
|
||||
min(38)_GB(8)_test3 2 -1234567899 -5678.0000000000 0.0000000000000000000
|
||||
SELECT "max(38)_GB(8)_test3" ,i1,max(d1),max(d2),max(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
max(38)_GB(8)_test3 i1 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(8)_test3 1 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
max(38)_GB(8)_test3 2 12345678901 12345678.9012000000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_GB(8)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
group_concat(38)_GB(8)_test3 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(8)_test3 -1234567899,0,1234,12345678901 -5678.0000000000,0.0000000000,5678.0000000000,12345678.9012000000 0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000
|
||||
group_concat(38)_GB(8)_test3 0,1234,1234,12345678901 -5678.0000000000,0.0000000000,5678.0000000000,12345678.9012800000 -0.1234567890123400000,0.0000000000000000000,0.1234567890123000000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_GB(8)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(8)_test3 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(8)_test3 3 4 4
|
||||
count(distinct 38)_GB(8)_test3 4 4 3
|
||||
SELECT "sum(19)_test4", sum(d1),sum(d2),sum(d3) FROM cs4;
|
||||
sum(19)_test4 sum(d1) sum(d2) sum(d3)
|
||||
sum(19)_test4 25925929403 24714069.8025100000 0.7407407340739200000
|
||||
SELECT "avg(19)_test4", avg(d1),avg(d2),avg(d3) FROM cs4;
|
||||
avg(19)_test4 avg(d1) avg(d2) avg(d3)
|
||||
avg(19)_test4 3240741175.3750 3089258.72531375000000 0.09259259175924000000000
|
||||
SELECT "count(19)_test4", count(d1),count(d2),count(d3) FROM cs4;
|
||||
count(19)_test4 count(d1) count(d2) count(d3)
|
||||
count(19)_test4 8 8 8
|
||||
SELECT "min(19)_test4", min(d1),min(d2),min(d3) FROM cs4;
|
||||
min(19)_test4 min(d1) min(d2) min(d3)
|
||||
min(19)_test4 0 0.0000000000 0.0000000000000000000
|
||||
SELECT "max(19)_test4", max(d1),max(d2),max(d3) FROM cs4;
|
||||
max(19)_test4 max(d1) max(d2) max(d3)
|
||||
max(19)_test4 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs4;
|
||||
group_concat(38)_test4 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_test4 0,0,1234,1234,1234,1234567899,12345678901,12345678901 0.0000000000,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,12345678.9012300000,12345678.9012800000 0.0000000000000000000,0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000,0.1234567890123400000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs4;
|
||||
count(distinct 38)_test4 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test4 4 4 3
|
||||
SELECT "sum(19)_test4", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
sum(19)_test4 sum(d1) sum(d2) sum(d3)
|
||||
sum(19)_test4 25925929403 24714069.8025100000 0.7407407340739200000
|
||||
SELECT "avg(19)_test4", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
avg(19)_test4 avg(d1) avg(d2) avg(d3)
|
||||
avg(19)_test4 3240741175.3750 3089258.72531375000000 0.09259259175924000000000
|
||||
SELECT "count(19)_test4", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
count(19)_test4 count(d1) count(d2) count(d3)
|
||||
count(19)_test4 8 8 8
|
||||
SELECT "min(19)_test4", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
min(19)_test4 min(d1) min(d2) min(d3)
|
||||
min(19)_test4 0 0.0000000000 0.0000000000000000000
|
||||
SELECT "max(19)_test4", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
max(19)_test4 max(d1) max(d2) max(d3)
|
||||
max(19)_test4 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
group_concat(38)_test4 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_test4 0,0,1234,1234,1234,1234567899,12345678901,12345678901 0.0000000000,0.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,5678.0000000000,12345678.9012300000,12345678.9012800000 0.0000000000000000000,0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000,0.1234567890123400000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
count(distinct 38)_test4 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_test4 4 4 3
|
||||
SELECT "sum(38)_GB(38)_test4" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
sum(38)_GB(38)_test4 d4 d5 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(38)_test4 2 1 12345681369 12357034.9012800000 0.3703703670369800000
|
||||
sum(38)_GB(38)_test4 3 2 13580248034 12357034.9012300000 0.3703703670369400000
|
||||
SELECT "avg(38)_GB(38)_test4" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
avg(38)_GB(38)_test4 d4 d5 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(38)_test4 2 1 3086420342.2500 3089258.72532000000000 0.09259259175924500000000
|
||||
avg(38)_GB(38)_test4 3 2 3395062008.5000 3089258.72530750000000 0.09259259175923500000000
|
||||
SELECT "count(38)_GB(38)_test4" ,d4,d5,count(d1),count(d2),count(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(38)_GB(38)_test4 d4 d5 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(38)_test4 2 1 4 4 4
|
||||
count(38)_GB(38)_test4 3 2 4 4 4
|
||||
SELECT "min(38)_GB(38)_test4" ,d4,d5,min(d1),min(d2),min(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
min(38)_GB(38)_test4 d4 d5 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(38)_test4 2 1 0 0.0000000000 0.0000000000000000000
|
||||
min(38)_GB(38)_test4 3 2 0 0.0000000000 0.0000000000000000000
|
||||
SELECT "max(38)_GB(38)_test4" ,d4,d5,max(d1),max(d2),max(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
max(38)_GB(38)_test4 d4 d5 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(38)_test4 2 1 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
max(38)_GB(38)_test4 3 2 12345678901 12345678.9012300000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_GB(38)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
group_concat(38)_GB(38)_test4 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(38)_test4 0,1234,1234,12345678901 0.0000000000,5678.0000000000,5678.0000000000,12345678.9012800000 0.0000000000000000000,0.1234567890123000000,0.1234567890123400000,0.1234567890123400000
|
||||
group_concat(38)_GB(38)_test4 0,1234,1234567899,12345678901 0.0000000000,5678.0000000000,5678.0000000000,12345678.9012300000 0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_GB(38)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(38)_test4 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(38)_test4 3 3 3
|
||||
count(distinct 38)_GB(38)_test4 4 3 3
|
||||
SELECT "sum(38)_GB(38)_test4" ,i1,sum(d1),sum(d2),sum(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
sum(38)_GB(38)_test4 i1 sum(d1) sum(d2) sum(d3)
|
||||
sum(38)_GB(38)_test4 1 12345681369 12357034.9012800000 0.3703703670369800000
|
||||
sum(38)_GB(38)_test4 2 13580248034 12357034.9012300000 0.3703703670369400000
|
||||
SELECT "avg(38)_GB(38)_test4" ,i1,avg(d1),avg(d2),avg(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
avg(38)_GB(38)_test4 i1 avg(d1) avg(d2) avg(d3)
|
||||
avg(38)_GB(38)_test4 1 3086420342.2500 3089258.72532000000000 0.09259259175924500000000
|
||||
avg(38)_GB(38)_test4 2 3395062008.5000 3089258.72530750000000 0.09259259175923500000000
|
||||
SELECT "count(38)_GB(38)_test4" ,i1,count(d1),count(d2),count(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
count(38)_GB(38)_test4 i1 count(d1) count(d2) count(d3)
|
||||
count(38)_GB(38)_test4 1 4 4 4
|
||||
count(38)_GB(38)_test4 2 4 4 4
|
||||
SELECT "min(38)_GB(38)_test4" ,i1,min(d1),min(d2),min(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
min(38)_GB(38)_test4 i1 min(d1) min(d2) min(d3)
|
||||
min(38)_GB(38)_test4 1 0 0.0000000000 0.0000000000000000000
|
||||
min(38)_GB(38)_test4 2 0 0.0000000000 0.0000000000000000000
|
||||
SELECT "max(38)_GB(38)_test4" ,i1,max(d1),max(d2),max(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
max(38)_GB(38)_test4 i1 max(d1) max(d2) max(d3)
|
||||
max(38)_GB(38)_test4 1 12345678901 12345678.9012800000 0.1234567890123400000
|
||||
max(38)_GB(38)_test4 2 12345678901 12345678.9012300000 0.1234567890123400000
|
||||
SELECT "group_concat(38)_GB(8)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
group_concat(38)_GB(8)_test4 group_concat(d1 ORDER BY d1) group_concat(d2 ORDER BY d2) group_concat(d3 ORDER BY d3)
|
||||
group_concat(38)_GB(8)_test4 0,1234,1234,12345678901 0.0000000000,5678.0000000000,5678.0000000000,12345678.9012800000 0.0000000000000000000,0.1234567890123000000,0.1234567890123400000,0.1234567890123400000
|
||||
group_concat(38)_GB(8)_test4 0,1234,1234567899,12345678901 0.0000000000,5678.0000000000,5678.0000000000,12345678.9012300000 0.0000000000000000000,0.1234567890123000000,0.1234567890123000000,0.1234567890123400000
|
||||
SELECT "count(distinct 38)_GB(8)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
count(distinct 38)_GB(8)_test4 count(distinct d1) count(distinct d2) count(distinct d3)
|
||||
count(distinct 38)_GB(8)_test4 3 3 3
|
||||
count(distinct 38)_GB(8)_test4 4 3 3
|
||||
SELECT sum(d1), "sum(38)_test1", sum(d2),sum(d3) FROM cs1;
|
||||
sum(d1) sum(38)_test1 sum(d2) sum(d3)
|
||||
24691234345680012331639 sum(38)_test1 2469135780246935707281.8024691356 0.12345678901234567290123327780032580000
|
||||
INSERT INTO cs5 VALUES (1),(0.1),(0.05),(0.05),(0.05),(0.05),(0.2),(0.154),(0.1),(0.05),(0.05);
|
||||
SELECT avg(d) FROM cs5;
|
||||
avg(d)
|
||||
0.16854545454545454545455
|
||||
UPDATE cs5 SET d=-d;
|
||||
SELECT avg(d) FROM cs5;
|
||||
avg(d)
|
||||
-0.16854545454545454545455
|
||||
DROP TABLE cs1;
|
||||
DROP TABLE cs2;
|
||||
DROP TABLE cs3;
|
||||
DROP TABLE cs4;
|
||||
DROP TABLE cs5;
|
559
mysql-test/columnstore/basic/r/mcol641-arithmetic.result
Normal file
559
mysql-test/columnstore/basic/r/mcol641-arithmetic.result
Normal file
@ -0,0 +1,559 @@
|
||||
DROP DATABASE IF EXISTS mcol641_arithmetic_db;
|
||||
CREATE DATABASE mcol641_arithmetic_db;
|
||||
USE mcol641_arithmetic_db;
|
||||
DROP PROCEDURE IF EXISTS deleteproc;
|
||||
CREATE PROCEDURE deleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
DELETE FROM cs7;
|
||||
DELETE FROM cs8;
|
||||
DELETE FROM cs9;
|
||||
DELETE FROM cs10;
|
||||
DELETE FROM cs11;
|
||||
DELETE FROM cs12;
|
||||
END//
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(19), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38), d2 DECIMAL(10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs5 (d1 DECIMAL(38,10), d2 DECIMAL(38,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs6 (d1 DECIMAL(19,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs7 (d1 DECIMAL(38,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs8 (d1 DECIMAL(38,10), d2 DECIMAL(10,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs9 (d1 DECIMAL(38,38), d2 DECIMAL(38,38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs10 (d1 DECIMAL(19,19), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs11 (d1 DECIMAL(38,38), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs12 (d1 DECIMAL(38,38), d2 DECIMAL(10,10)) ENGINE=columnstore;
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 12345678901234567890123456789012345678), (12345678901234567890123456789012345678, -22345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "add_test_38_0_38_0", d1 + d2 FROM cs1;
|
||||
add_test_38_0_38_0 d1 + d2
|
||||
add_test_38_0_38_0 6912
|
||||
add_test_38_0_38_0 -4444
|
||||
add_test_38_0_38_0 24691357802469135780246913578024691356
|
||||
add_test_38_0_38_0 -10000000000000000000000000000000000000
|
||||
add_test_38_0_38_0 99999999999999999999999999999999999999
|
||||
add_test_38_0_38_0 -99999999999999999999999999999999999999
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs2 VALUES (9999999999999999998, 1), (-9999999999999999998, -1);
|
||||
SELECT "add_test_19_0_19_0", d1 + d2 FROM cs2;
|
||||
add_test_19_0_19_0 d1 + d2
|
||||
add_test_19_0_19_0 6912
|
||||
add_test_19_0_19_0 -4444
|
||||
add_test_19_0_19_0 2469135780246913578
|
||||
add_test_19_0_19_0 -1000000000000000000
|
||||
add_test_19_0_19_0 9999999999999999999
|
||||
add_test_19_0_19_0 -9999999999999999999
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 1234567890123456789), (12345678901234567890123456789012345678, -2234567890123456789);
|
||||
INSERT INTO cs3 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "add_test_38_0_19_0", d1 + d2 FROM cs3;
|
||||
add_test_38_0_19_0 d1 + d2
|
||||
add_test_38_0_19_0 6912
|
||||
add_test_38_0_19_0 -4444
|
||||
add_test_38_0_19_0 12345678901234567891358024679135802467
|
||||
add_test_38_0_19_0 12345678901234567887888888898888888889
|
||||
add_test_38_0_19_0 99999999999999999999999999999999999999
|
||||
add_test_38_0_19_0 -99999999999999999999999999999999999999
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 1234567890), (12345678901234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "add_test_38_0_10_0", d1 + d2 FROM cs4;
|
||||
add_test_38_0_10_0 d1 + d2
|
||||
add_test_38_0_10_0 6912
|
||||
add_test_38_0_10_0 -4444
|
||||
add_test_38_0_10_0 12345678901234567890123456790246913568
|
||||
add_test_38_0_10_0 12345678901234567890123456786777777788
|
||||
add_test_38_0_10_0 99999999999999999999999999999999999999
|
||||
add_test_38_0_10_0 -99999999999999999999999999999999999999
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, 1234567890123456789012345678.9012345678), (1234567890123456789012345678.9012345678, -2234567890123456789012345678.9012345678);
|
||||
INSERT INTO cs5 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_38_10_38_10", d1 + d2 FROM cs5;
|
||||
add_test_38_10_38_10 d1 + d2
|
||||
add_test_38_10_38_10 69.1200000000
|
||||
add_test_38_10_38_10 -44.4400000000
|
||||
add_test_38_10_38_10 2469135780246913578024691357.8024691356
|
||||
add_test_38_10_38_10 -1000000000000000000000000000.0000000000
|
||||
add_test_38_10_38_10 9999999999999999999999999999.9999999999
|
||||
add_test_38_10_38_10 -9999999999999999999999999999.9999999999
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs6 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_19_10_19_10", d1 + d2 FROM cs6;
|
||||
add_test_19_10_19_10 d1 + d2
|
||||
add_test_19_10_19_10 69.1200000000
|
||||
add_test_19_10_19_10 -44.4400000000
|
||||
add_test_19_10_19_10 246913578.0246913578
|
||||
add_test_19_10_19_10 -100000000.0000000000
|
||||
add_test_19_10_19_10 999999999.9999999999
|
||||
add_test_19_10_19_10 -999999999.9999999999
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 123456789.0123456789), (1234567890123456789012345678.9012345678, -223456789.0123456789);
|
||||
INSERT INTO cs7 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_38_10_19_10", d1 + d2 FROM cs7;
|
||||
add_test_38_10_19_10 d1 + d2
|
||||
add_test_38_10_19_10 69.1200000000
|
||||
add_test_38_10_19_10 -44.4400000000
|
||||
add_test_38_10_19_10 1234567890123456789135802467.9135802467
|
||||
add_test_38_10_19_10 1234567890123456788788888889.8888888889
|
||||
add_test_38_10_19_10 9999999999999999999999999999.9999999999
|
||||
add_test_38_10_19_10 -9999999999999999999999999999.9999999999
|
||||
INSERT INTO cs8 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs8 VALUES (1234567890123456789012345678.9012345678, 0.1234567890), (1234567890123456789012345678.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_38_10_10_10", d1 + d2 FROM cs8;
|
||||
add_test_38_10_10_10 d1 + d2
|
||||
add_test_38_10_10_10 0.6912000000
|
||||
add_test_38_10_10_10 -0.4444000000
|
||||
add_test_38_10_10_10 1234567890123456789012345679.0246913568
|
||||
add_test_38_10_10_10 1234567890123456789012345678.6777777788
|
||||
add_test_38_10_10_10 9999999999999999999999999999.9999999999
|
||||
add_test_38_10_10_10 -9999999999999999999999999999.9999999999
|
||||
INSERT INTO cs9 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs9 VALUES (0.12345678901234567890123456789012345678, 0.12345678901234567890123456789012345678), (0.12345678901234567890123456789012345678, -0.22345678901234567890123456789012345678);
|
||||
INSERT INTO cs9 VALUES (0.99999999999999999999999999999999999998, 0.00000000000000000000000000000000000001), (-0.99999999999999999999999999999999999998, -0.00000000000000000000000000000000000001);
|
||||
SELECT "add_test_38_38_38_38", d1 + d2 FROM cs9;
|
||||
add_test_38_38_38_38 d1 + d2
|
||||
add_test_38_38_38_38 0.69120000000000000000000000000000000000
|
||||
add_test_38_38_38_38 -0.44440000000000000000000000000000000000
|
||||
add_test_38_38_38_38 0.24691357802469135780246913578024691356
|
||||
add_test_38_38_38_38 -0.10000000000000000000000000000000000000
|
||||
add_test_38_38_38_38 0.99999999999999999999999999999999999999
|
||||
add_test_38_38_38_38 -0.99999999999999999999999999999999999999
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.1234567890123456789), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs10 VALUES (0.9999999999999999998, 0.0000000000000000001), (-0.9999999999999999998, -0.0000000000000000001);
|
||||
SELECT "add_test_19_19_19_19", d1 + d2 FROM cs10;
|
||||
add_test_19_19_19_19 d1 + d2
|
||||
add_test_19_19_19_19 0.6912000000000000000
|
||||
add_test_19_19_19_19 -0.4444000000000000000
|
||||
add_test_19_19_19_19 0.2469135780246913578
|
||||
add_test_19_19_19_19 -0.1000000000000000000
|
||||
add_test_19_19_19_19 0.9999999999999999999
|
||||
add_test_19_19_19_19 -0.9999999999999999999
|
||||
INSERT INTO cs11 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs11 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789), (0.12345678901234567890123456789012345678, -0.2234567890123456789);
|
||||
INSERT INTO cs11 VALUES (0.99999999999999999999999999999999999998, 0.0000000000000000001), (-0.99999999999999999999999999999999999998, -0.0000000000000000001);
|
||||
SELECT "add_test_38_38_19_19", d1 + d2 FROM cs11;
|
||||
add_test_38_38_19_19 d1 + d2
|
||||
add_test_38_38_19_19 0.69120000000000000000000000000000000000
|
||||
add_test_38_38_19_19 -0.44440000000000000000000000000000000000
|
||||
add_test_38_38_19_19 0.24691357802469135780123456789012345678
|
||||
add_test_38_38_19_19 -0.09999999999999999999876543210987654322
|
||||
add_test_38_38_19_19 1.00000000000000000009999999999999999998
|
||||
add_test_38_38_19_19 -1.00000000000000000009999999999999999998
|
||||
INSERT INTO cs12 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.12345678901234567890123456789012345678, 0.1234567890), (0.12345678901234567890123456789012345678, -0.2234567890);
|
||||
INSERT INTO cs12 VALUES (0.99999999999999999999999999999999999998, 0.0000000001), (-0.99999999999999999999999999999999999998, -0.0000000001);
|
||||
SELECT "add_test_38_38_10_10", d1 + d2 FROM cs12;
|
||||
add_test_38_38_10_10 d1 + d2
|
||||
add_test_38_38_10_10 0.69120000000000000000000000000000000000
|
||||
add_test_38_38_10_10 -0.44440000000000000000000000000000000000
|
||||
add_test_38_38_10_10 0.24691357801234567890123456789012345678
|
||||
add_test_38_38_10_10 -0.09999999998765432109876543210987654322
|
||||
add_test_38_38_10_10 1.00000000009999999999999999999999999998
|
||||
add_test_38_38_10_10 -1.00000000009999999999999999999999999998
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
CALL deleteproc();
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, -12345678901234567890123456789012345678), (-12345678901234567890123456789012345678, -22345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (99999999999999999999999999999999999999, 1), (-99999999999999999999999999999999999999, -1);
|
||||
SELECT "subtract_test_38_0_38_0", d1 - d2 FROM cs1;
|
||||
subtract_test_38_0_38_0 d1 - d2
|
||||
subtract_test_38_0_38_0 -4444
|
||||
subtract_test_38_0_38_0 6912
|
||||
subtract_test_38_0_38_0 24691357802469135780246913578024691356
|
||||
subtract_test_38_0_38_0 10000000000000000000000000000000000000
|
||||
subtract_test_38_0_38_0 99999999999999999999999999999999999998
|
||||
subtract_test_38_0_38_0 -99999999999999999999999999999999999998
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, -1234567890123456789), (-1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs2 VALUES (9999999999999999999, 1), (-9999999999999999999, -1);
|
||||
SELECT "subtract_test_19_0_19_0", d1 - d2 FROM cs2;
|
||||
subtract_test_19_0_19_0 d1 - d2
|
||||
subtract_test_19_0_19_0 -4444
|
||||
subtract_test_19_0_19_0 6912
|
||||
subtract_test_19_0_19_0 2469135780246913578
|
||||
subtract_test_19_0_19_0 1000000000000000000
|
||||
subtract_test_19_0_19_0 9999999999999999998
|
||||
subtract_test_19_0_19_0 -9999999999999999998
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 1234567890123456789), (-12345678901234567890123456789012345678, -2234567890123456789);
|
||||
INSERT INTO cs3 VALUES (99999999999999999999999999999999999999, 1), (-99999999999999999999999999999999999999, -1);
|
||||
SELECT "subtract_test_38_0_19_0", d1 - d2 FROM cs3;
|
||||
subtract_test_38_0_19_0 d1 - d2
|
||||
subtract_test_38_0_19_0 -4444
|
||||
subtract_test_38_0_19_0 6912
|
||||
subtract_test_38_0_19_0 12345678901234567888888888898888888889
|
||||
subtract_test_38_0_19_0 -12345678901234567887888888898888888889
|
||||
subtract_test_38_0_19_0 99999999999999999999999999999999999998
|
||||
subtract_test_38_0_19_0 -99999999999999999999999999999999999998
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 1234567890), (-12345678901234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (99999999999999999999999999999999999999, 1), (-99999999999999999999999999999999999999, -1);
|
||||
SELECT "subtract_test_38_0_10_0", d1 - d2 FROM cs4;
|
||||
subtract_test_38_0_10_0 d1 - d2
|
||||
subtract_test_38_0_10_0 -4444
|
||||
subtract_test_38_0_10_0 6912
|
||||
subtract_test_38_0_10_0 12345678901234567890123456787777777788
|
||||
subtract_test_38_0_10_0 -12345678901234567890123456786777777788
|
||||
subtract_test_38_0_10_0 99999999999999999999999999999999999998
|
||||
subtract_test_38_0_10_0 -99999999999999999999999999999999999998
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, -1234567890123456789012345678.9012345678), (-1234567890123456789012345678.9012345678, -2234567890123456789012345678.9012345678);
|
||||
INSERT INTO cs5 VALUES (9999999999999999999999999999.9999999999, 0.0000000001), (-9999999999999999999999999999.9999999999, -0.0000000001);
|
||||
SELECT "subtract_test_38_10_38_10", d1 - d2 FROM cs5;
|
||||
subtract_test_38_10_38_10 d1 - d2
|
||||
subtract_test_38_10_38_10 -44.4400000000
|
||||
subtract_test_38_10_38_10 69.1200000000
|
||||
subtract_test_38_10_38_10 2469135780246913578024691357.8024691356
|
||||
subtract_test_38_10_38_10 1000000000000000000000000000.0000000000
|
||||
subtract_test_38_10_38_10 9999999999999999999999999999.9999999998
|
||||
subtract_test_38_10_38_10 -9999999999999999999999999999.9999999998
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, -123456789.0123456789), (-123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs6 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "subtract_test_19_10_19_10", d1 - d2 FROM cs6;
|
||||
subtract_test_19_10_19_10 d1 - d2
|
||||
subtract_test_19_10_19_10 -44.4400000000
|
||||
subtract_test_19_10_19_10 69.1200000000
|
||||
subtract_test_19_10_19_10 246913578.0246913578
|
||||
subtract_test_19_10_19_10 100000000.0000000000
|
||||
subtract_test_19_10_19_10 999999999.9999999997
|
||||
subtract_test_19_10_19_10 -999999999.9999999997
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 123456789.0123456789), (-1234567890123456789012345678.9012345678, -223456789.0123456789);
|
||||
INSERT INTO cs7 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "subtract_test_38_10_19_10", d1 - d2 FROM cs7;
|
||||
subtract_test_38_10_19_10 d1 - d2
|
||||
subtract_test_38_10_19_10 -44.4400000000
|
||||
subtract_test_38_10_19_10 69.1200000000
|
||||
subtract_test_38_10_19_10 1234567890123456788888888889.8888888889
|
||||
subtract_test_38_10_19_10 -1234567890123456788788888889.8888888889
|
||||
subtract_test_38_10_19_10 9999999999999999999999999999.9999999997
|
||||
subtract_test_38_10_19_10 -9999999999999999999999999999.9999999997
|
||||
INSERT INTO cs8 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs8 VALUES (1234567890123456789012345678.9012345678, 0.1234567890), (-1234567890123456789012345678.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "subtract_test_38_10_10_10", d1 - d2 FROM cs8;
|
||||
subtract_test_38_10_10_10 d1 - d2
|
||||
subtract_test_38_10_10_10 -0.4444000000
|
||||
subtract_test_38_10_10_10 0.6912000000
|
||||
subtract_test_38_10_10_10 1234567890123456789012345678.7777777788
|
||||
subtract_test_38_10_10_10 -1234567890123456789012345678.6777777788
|
||||
subtract_test_38_10_10_10 9999999999999999999999999999.9999999997
|
||||
subtract_test_38_10_10_10 -9999999999999999999999999999.9999999997
|
||||
INSERT INTO cs9 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs9 VALUES (-0.12345678901234567890123456789012345678, 0.12345678901234567890123456789012345678), (-0.12345678901234567890123456789012345678, -0.22345678901234567890123456789012345678);
|
||||
INSERT INTO cs9 VALUES (0.99999999999999999999999999999999999998, 0.00000000000000000000000000000000000001), (-0.99999999999999999999999999999999999998, -0.00000000000000000000000000000000000001);
|
||||
SELECT "subtract_test_38_38_38_38", d1 - d2 FROM cs9;
|
||||
subtract_test_38_38_38_38 d1 - d2
|
||||
subtract_test_38_38_38_38 -0.44440000000000000000000000000000000000
|
||||
subtract_test_38_38_38_38 0.69120000000000000000000000000000000000
|
||||
subtract_test_38_38_38_38 -0.24691357802469135780246913578024691356
|
||||
subtract_test_38_38_38_38 0.10000000000000000000000000000000000000
|
||||
subtract_test_38_38_38_38 0.99999999999999999999999999999999999997
|
||||
subtract_test_38_38_38_38 -0.99999999999999999999999999999999999997
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.1234567890123456788), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs10 VALUES (0.9999999999999999998, 0.0000000100000000001), (-0.9999999999999999998, -0.0000000100000000001);
|
||||
SELECT "subtract_test_19_19_19_19", d1 - d2 FROM cs10;
|
||||
subtract_test_19_19_19_19 d1 - d2
|
||||
subtract_test_19_19_19_19 -0.4444000000000000000
|
||||
subtract_test_19_19_19_19 0.6912000000000000000
|
||||
subtract_test_19_19_19_19 0.0000000000000000001
|
||||
subtract_test_19_19_19_19 0.3469135780246913578
|
||||
subtract_test_19_19_19_19 0.9999999899999999997
|
||||
subtract_test_19_19_19_19 -0.9999999899999999997
|
||||
INSERT INTO cs11 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs11 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789), (-0.12345678901234567890123456789012345678, -0.2234567890123456789);
|
||||
INSERT INTO cs11 VALUES (0.99999999999999999999999999999999999998, 0.0000000000000000001), (-0.99999999999999999999999999999999999998, -0.0000000000000000001);
|
||||
SELECT "subtract_test_38_38_19_19", d1 - d2 FROM cs11;
|
||||
subtract_test_38_38_19_19 d1 - d2
|
||||
subtract_test_38_38_19_19 -0.44440000000000000000000000000000000000
|
||||
subtract_test_38_38_19_19 0.69120000000000000000000000000000000000
|
||||
subtract_test_38_38_19_19 0.00000000000000000000123456789012345678
|
||||
subtract_test_38_38_19_19 0.09999999999999999999876543210987654322
|
||||
subtract_test_38_38_19_19 0.99999999999999999989999999999999999998
|
||||
subtract_test_38_38_19_19 -0.99999999999999999989999999999999999998
|
||||
INSERT INTO cs12 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.12345678901234567890123456789012345678, 0.1234567890), (0.12345678901234567890123456789012345678, -0.2234567890);
|
||||
INSERT INTO cs12 VALUES (0.99999999999999999999999999999999999998, 0.0000000001), (-0.99999999999999999999999999999999999998, -0.0000000001);
|
||||
SELECT "subtract_test_38_38_10_10", d1 - d2 FROM cs12;
|
||||
subtract_test_38_38_10_10 d1 - d2
|
||||
subtract_test_38_38_10_10 -0.44440000000000000000000000000000000000
|
||||
subtract_test_38_38_10_10 0.69120000000000000000000000000000000000
|
||||
subtract_test_38_38_10_10 0.00000000001234567890123456789012345678
|
||||
subtract_test_38_38_10_10 0.34691357801234567890123456789012345678
|
||||
subtract_test_38_38_10_10 0.99999999989999999999999999999999999998
|
||||
subtract_test_38_38_10_10 -0.99999999989999999999999999999999999998
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
CALL deleteproc();
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs1 VALUES (9999999999999999999999999999, 10000000000), (-9999999999999999999999999999, -10000000000);
|
||||
SELECT "multiply_test_38_0_38_0", d1 * d2 FROM cs1;
|
||||
multiply_test_38_0_38_0 d1 * d2
|
||||
multiply_test_38_0_38_0 7006652
|
||||
multiply_test_38_0_38_0 -7006652
|
||||
multiply_test_38_0_38_0 1524157875323883675019051998750190521
|
||||
multiply_test_38_0_38_0 -2758725765447340464019051998750190521
|
||||
multiply_test_38_0_38_0 99999999999999999999999999990000000000
|
||||
multiply_test_38_0_38_0 99999999999999999999999999990000000000
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs2 VALUES (9999999999999999998, 1), (-9999999999999999998, -1);
|
||||
SELECT "multiply_test_19_0_19_0", d1 * d2 FROM cs2;
|
||||
multiply_test_19_0_19_0 d1 * d2
|
||||
multiply_test_19_0_19_0 7006652
|
||||
multiply_test_19_0_19_0 -7006652
|
||||
multiply_test_19_0_19_0 1524157875323883675019051998750190521
|
||||
multiply_test_19_0_19_0 -2758725765447340464019051998750190521
|
||||
multiply_test_19_0_19_0 9999999999999999998
|
||||
multiply_test_19_0_19_0 9999999999999999998
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs3 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "multiply_test_38_0_19_0", d1 * d2 FROM cs3;
|
||||
multiply_test_38_0_19_0 d1 * d2
|
||||
multiply_test_38_0_19_0 7006652
|
||||
multiply_test_38_0_19_0 -7006652
|
||||
multiply_test_38_0_19_0 1524157875323883675019051998750190521
|
||||
multiply_test_38_0_19_0 -2758725765447340464019051998750190521
|
||||
multiply_test_38_0_19_0 99999999999999999999999999999999999998
|
||||
multiply_test_38_0_19_0 99999999999999999999999999999999999998
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (1234567890123456789012345678, 1234567890), (1234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (99999999999999999999999999998, 1000000000), (-99999999999999999999999999998, -1000000000);
|
||||
SELECT "multiply_test_38_0_10_0", d1 * d2 FROM cs4;
|
||||
multiply_test_38_0_10_0 d1 * d2
|
||||
multiply_test_38_0_10_0 7006652
|
||||
multiply_test_38_0_10_0 -7006652
|
||||
multiply_test_38_0_10_0 1524157875171467887517146787639079420
|
||||
multiply_test_38_0_10_0 -2758725765294924676529492465639079420
|
||||
multiply_test_38_0_10_0 99999999999999999999999999998000000000
|
||||
multiply_test_38_0_10_0 99999999999999999999999999998000000000
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs5 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_38_10_38_10", d1 * d2 FROM cs5;
|
||||
multiply_test_38_10_38_10 d1 * d2
|
||||
multiply_test_38_10_38_10 700.66520000000000000000
|
||||
multiply_test_38_10_38_10 -700.66520000000000000000
|
||||
multiply_test_38_10_38_10 15241578753238836.75019051998750190521
|
||||
multiply_test_38_10_38_10 -27587257654473404.64019051998750190521
|
||||
multiply_test_38_10_38_10 0.09999999999999999998
|
||||
multiply_test_38_10_38_10 0.09999999999999999998
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs6 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_19_10_19_10", d1 * d2 FROM cs6;
|
||||
multiply_test_19_10_19_10 d1 * d2
|
||||
multiply_test_19_10_19_10 700.66520000000000000000
|
||||
multiply_test_19_10_19_10 -700.66520000000000000000
|
||||
multiply_test_19_10_19_10 15241578753238836.75019051998750190521
|
||||
multiply_test_19_10_19_10 -27587257654473404.64019051998750190521
|
||||
multiply_test_19_10_19_10 0.09999999999999999998
|
||||
multiply_test_19_10_19_10 0.09999999999999999998
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs7 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_38_10_19_10", d1 * d2 FROM cs7;
|
||||
multiply_test_38_10_19_10 d1 * d2
|
||||
multiply_test_38_10_19_10 700.66520000000000000000
|
||||
multiply_test_38_10_19_10 -700.66520000000000000000
|
||||
multiply_test_38_10_19_10 15241578753238836.75019051998750190521
|
||||
multiply_test_38_10_19_10 -27587257654473404.64019051998750190521
|
||||
multiply_test_38_10_19_10 0.09999999999999999998
|
||||
multiply_test_38_10_19_10 0.09999999999999999998
|
||||
INSERT INTO cs8 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs8 VALUES (123456789012345678.9012345678, 0.1234567890), (123456789012345678.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (999999999999999999.9999999998, 0.0000000001), (-999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_38_10_10_10", d1 * d2 FROM cs8;
|
||||
multiply_test_38_10_10_10 d1 * d2
|
||||
multiply_test_38_10_10_10 0.07006652000000000000
|
||||
multiply_test_38_10_10_10 -0.07006652000000000000
|
||||
multiply_test_38_10_10_10 15241578751714678.87517146787639079420
|
||||
multiply_test_38_10_10_10 -27587257652949246.76529492465639079420
|
||||
multiply_test_38_10_10_10 99999999.99999999999999999998
|
||||
multiply_test_38_10_10_10 99999999.99999999999999999998
|
||||
INSERT INTO cs9 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs9 VALUES (0.1234567890123456789, 0.1234567890123456789), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs9 VALUES (0.9999999999999999998, 0.0000000000000000001), (-0.9999999999999999998, -0.0000000000000000001);
|
||||
SELECT "multiply_test_38_38_38_38", d1 * d2 FROM cs9;
|
||||
multiply_test_38_38_38_38 d1 * d2
|
||||
multiply_test_38_38_38_38 0.07006652000000000000000000000000000000
|
||||
multiply_test_38_38_38_38 -0.07006652000000000000000000000000000000
|
||||
multiply_test_38_38_38_38 0.01524157875323883675019051998750190521
|
||||
multiply_test_38_38_38_38 -0.02758725765447340464019051998750190521
|
||||
multiply_test_38_38_38_38 0.00000000000000000009999999999999999998
|
||||
multiply_test_38_38_38_38 0.00000000000000000009999999999999999998
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.1234567890123456789), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs10 VALUES (0.9999999999999999998, 0.0000000000000000001), (-0.9999999999999999998, -0.0000000000000000001);
|
||||
SELECT "multiply_test_19_19_19_19", d1 * d2 FROM cs10;
|
||||
multiply_test_19_19_19_19 d1 * d2
|
||||
multiply_test_19_19_19_19 0.07006652000000000000000000000000000000
|
||||
multiply_test_19_19_19_19 -0.07006652000000000000000000000000000000
|
||||
multiply_test_19_19_19_19 0.01524157875323883675019051998750190521
|
||||
multiply_test_19_19_19_19 -0.02758725765447340464019051998750190521
|
||||
multiply_test_19_19_19_19 0.00000000000000000009999999999999999998
|
||||
multiply_test_19_19_19_19 0.00000000000000000009999999999999999998
|
||||
INSERT INTO cs11 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs11 VALUES (0.1234567890123456789, 0.123456789), (0.1234567890123456789, -0.223456789);
|
||||
INSERT INTO cs11 VALUES (0.9999999999999999998, 0.000000001), (-0.9999999999999999998, -0.000000001);
|
||||
SELECT "multiply_test_38_38_19_19", d1 * d2 FROM cs11;
|
||||
multiply_test_38_38_19_19 d1 * d2
|
||||
multiply_test_38_38_19_19 0.07006652000000000000000000000000000000
|
||||
multiply_test_38_38_19_19 -0.07006652000000000000000000000000000000
|
||||
multiply_test_38_38_19_19 0.01524157875171467887501905210000000000
|
||||
multiply_test_38_38_19_19 -0.02758725765294924676501905210000000000
|
||||
multiply_test_38_38_19_19 0.00000000099999999999999999980000000000
|
||||
multiply_test_38_38_19_19 0.00000000099999999999999999980000000000
|
||||
INSERT INTO cs12 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.1234567890123456789012345678, 0.12345), (0.1234567890123456789012345678, -0.22345);
|
||||
INSERT INTO cs12 VALUES (0.9999999999999999999999999998, 0.00001), (-0.9999999999999999999999999998, -0.00001);
|
||||
SELECT "multiply_test_38_38_10_10", d1 * d2 FROM cs12;
|
||||
multiply_test_38_38_10_10 d1 * d2
|
||||
multiply_test_38_38_10_10 0.07006652000000000000000000000000000000
|
||||
multiply_test_38_38_10_10 -0.07006652000000000000000000000000000000
|
||||
multiply_test_38_38_10_10 0.01524074060357407406035740739491000000
|
||||
multiply_test_38_38_10_10 -0.02758641950480864195048086417491000000
|
||||
multiply_test_38_38_10_10 0.00000999999999999999999999999999800000
|
||||
multiply_test_38_38_10_10 0.00000999999999999999999999999999800000
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
CALL deleteproc();
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 4567890123456789), (12345678901234567890123456789012345678, -223456789012345678901234567890123456);
|
||||
INSERT INTO cs1 VALUES (44444444444444444444444444444444444444, 10000000000), (-44444444444444444444444444444444, 1000);
|
||||
SELECT "divide_test_38_0_38_0", d1 / d2, d2 / d1 FROM cs1;
|
||||
divide_test_38_0_38_0 d1 / d2 d2 / d1
|
||||
divide_test_38_0_38_0 0.2173 4.6013
|
||||
divide_test_38_0_38_0 -0.2173 -4.6013
|
||||
divide_test_38_0_38_0 2702709252536020344499.6001 0.0000
|
||||
divide_test_38_0_38_0 -55.2486 -0.0181
|
||||
divide_test_38_0_38_0 4444444444444444444444444444.4444 0.0000
|
||||
divide_test_38_0_38_0 -44444444444444444444444444444.4440 0.0000
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, 4567890123456789), (1234567890123456789, -223456789012345678);
|
||||
INSERT INTO cs2 VALUES (4444444444444444444, 10000000000), (-44444444444444444, -1000);
|
||||
SELECT "divide_test_19_0_19_0", d1 / d2, d2 / d1 FROM cs2;
|
||||
divide_test_19_0_19_0 d1 / d2 d2 / d1
|
||||
divide_test_19_0_19_0 0.2173 4.6013
|
||||
divide_test_19_0_19_0 -0.2173 -4.6013
|
||||
divide_test_19_0_19_0 270.2709 0.0037
|
||||
divide_test_19_0_19_0 -5.5249 -0.1810
|
||||
divide_test_19_0_19_0 444444444.4444 0.0000
|
||||
divide_test_19_0_19_0 44444444444444.4440 0.0000
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 4567890123456789), (12345678901234567890123456789012345678, -2234567890123456);
|
||||
INSERT INTO cs3 VALUES (4444444444444444444, 10000000000), (-44444444444444444, -1000);
|
||||
SELECT "divide_test_38_0_19_0", d1 / d2, d2 / d1 FROM cs3;
|
||||
divide_test_38_0_19_0 d1 / d2 d2 / d1
|
||||
divide_test_38_0_19_0 0.2173 4.6013
|
||||
divide_test_38_0_19_0 -0.2173 -4.6013
|
||||
divide_test_38_0_19_0 2702709252536020344499.6001 0.0000
|
||||
divide_test_38_0_19_0 -5524861856200972504265.3815 0.0000
|
||||
divide_test_38_0_19_0 444444444.4444 0.0000
|
||||
divide_test_38_0_19_0 44444444444444.4440 0.0000
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 4567890123), (12345678901234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (4444444444444444444, 1000000000), (-44444444444444444, -1000);
|
||||
SELECT "divide_test_38_0_10_0", d1 / d2, d2 / d1 FROM cs4;
|
||||
divide_test_38_0_10_0 d1 / d2 d2 / d1
|
||||
divide_test_38_0_10_0 0.2173 4.6013
|
||||
divide_test_38_0_10_0 -0.2173 -4.6013
|
||||
divide_test_38_0_10_0 2702709252806291262475591904.4711 0.0000
|
||||
divide_test_38_0_10_0 -5524861856506211538788135360.2608 0.0000
|
||||
divide_test_38_0_10_0 4444444444.4444 0.0000
|
||||
divide_test_38_0_10_0 44444444444444.4440 0.0000
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, 4567890123456789.0123456789), (1234567890123456789012345678.9012345678, -22345678901234567890123456.7890123456);
|
||||
INSERT INTO cs5 VALUES (4444444444444444444444444444.4444444444, 10000000000.0), (-4444444444444444444444.4444444444, 1000.0);
|
||||
SELECT "divide_test_38_10_38_10", d1 / d2, d2 / d1 FROM cs5;
|
||||
divide_test_38_10_38_10 d1 / d2 d2 / d1
|
||||
divide_test_38_10_38_10 0.21733004579077 4.60129659643436
|
||||
divide_test_38_10_38_10 -0.21733004579077 -4.60129659643436
|
||||
divide_test_38_10_38_10 270270925253.60203371949628 0.00000000000370
|
||||
divide_test_38_10_38_10 -55.24861856200971 -0.01810000007290
|
||||
divide_test_38_10_38_10 444444444444444444.44444444444444 0.00000000000000
|
||||
divide_test_38_10_38_10 -4444444444444444444.44444444444440 0.00000000000000
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, 456789.0123456789), (123456789.0123456789, -22345678.9012345678);
|
||||
INSERT INTO cs6 VALUES (444444444.4444444444, 100000000.0), (-4444444.4444444444, -1000.0);
|
||||
SELECT "divide_test_19_10_19_10", d1 / d2, d2 / d1 FROM cs6;
|
||||
divide_test_19_10_19_10 d1 / d2 d2 / d1
|
||||
divide_test_19_10_19_10 0.21733004579077 4.60129659643436
|
||||
divide_test_19_10_19_10 -0.21733004579077 -4.60129659643436
|
||||
divide_test_19_10_19_10 270.27092525360203 0.00369999103330
|
||||
divide_test_19_10_19_10 -5.52486185620097 -0.18100000072900
|
||||
divide_test_19_10_19_10 4.44444444444444 0.22500000000000
|
||||
divide_test_19_10_19_10 4444.44444444444440 0.00022500000000
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 456789012.0123456789), (1234567890123456789012345678.9012345678, -223456789.7890123456);
|
||||
INSERT INTO cs7 VALUES (444444444.4444444444, 100000000.0), (-4444444.4444444444, -1000.0);
|
||||
SELECT "divide_test_38_10_19_10", d1 / d2, d2 / d1 FROM cs7;
|
||||
divide_test_38_10_19_10 d1 / d2 d2 / d1
|
||||
divide_test_38_10_19_10 0.21733004579077 4.60129659643436
|
||||
divide_test_38_10_19_10 -0.21733004579077 -4.60129659643436
|
||||
divide_test_38_10_19_10 2702709254508271771.64263351022682 0.00000000000000
|
||||
divide_test_38_10_19_10 -5524861836998260061.30618678500406 0.00000000000000
|
||||
divide_test_38_10_19_10 4.44444444444444 0.22500000000000
|
||||
divide_test_38_10_19_10 4444.44444444444440 0.00022500000000
|
||||
INSERT INTO cs8 VALUES (12.34, 0.5678), (12.34, -0.5678);
|
||||
INSERT INTO cs8 VALUES (1234567890123456789.9012345678, 0.4567890123), (1234567890123456789.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (444444444.4444444444, 0.10000000), (-4444444.4444444444, -0.10000);
|
||||
SELECT "divide_test_38_10_10_10", d1 / d2, d2 / d1 FROM cs8;
|
||||
divide_test_38_10_10_10 d1 / d2 d2 / d1
|
||||
divide_test_38_10_10_10 21.73300457907714 0.04601296596434
|
||||
divide_test_38_10_10_10 -21.73300457907714 -0.04601296596434
|
||||
divide_test_38_10_10_10 2702709252806291264.42154258402682 0.00000000000000
|
||||
divide_test_38_10_10_10 -5524861856506211542.76603593279057 0.00000000000000
|
||||
divide_test_38_10_10_10 4444444444.44444444400000 0.00000000022500
|
||||
divide_test_38_10_10_10 44444444.44444444400000 0.00000002250000
|
||||
INSERT INTO cs9 VALUES (0.0000000000000000000000000001234, 0.000000000000000000005678), (0.000000000000000000000000001234, -0.000000000000000000005678);
|
||||
INSERT INTO cs9 VALUES (0.00000000000000000004567890123456789, 0.12345678901234567890123456789012345678), (-0.000000000000000002234567890123456789, 0.12345678901234567890123456789012345678);
|
||||
INSERT INTO cs9 VALUES (0.000000000000010000000000, 0.44444444444444444444444444444444444444), (0.00000000000001000, -0.44444444444444444444444444444444);
|
||||
SELECT "divide_test_38_38_38_38", d1 / d2 FROM cs9;
|
||||
divide_test_38_38_38_38 d1 / d2
|
||||
divide_test_38_38_38_38 0.00000002173300457907713983797111659035
|
||||
divide_test_38_38_38_38 -0.00000021733004579077139837971116590349
|
||||
divide_test_38_38_38_38 0.00000000000000000036999910332999183930
|
||||
divide_test_38_38_38_38 -0.00000000000000001810000007290000066329
|
||||
divide_test_38_38_38_38 0.00000000000002250000000000000000000000
|
||||
divide_test_38_38_38_38 -0.00000000000002250000000000000000000000
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.4567890123456789), (0.1234567890123456789, -0.223456789012345678);
|
||||
INSERT INTO cs10 VALUES (0.4444444444444444444, 0.10000000000), (-0.44444444444444444, -0.1000);
|
||||
SELECT "divide_test_19_19_19_19", d1 / d2, d2 / d1 FROM cs10;
|
||||
divide_test_19_19_19_19 d1 / d2 d2 / d1
|
||||
divide_test_19_19_19_19 0.21733004579077139837971 4.60129659643435980551053
|
||||
divide_test_19_19_19_19 -0.21733004579077139837971 -4.60129659643435980551053
|
||||
divide_test_19_19_19_19 0.27027092525360203444726 3.69999103329991839306626
|
||||
divide_test_19_19_19_19 -0.55248618562009705756976 -1.81000000729000005905710
|
||||
divide_test_19_19_19_19 4.44444444444444444400000 0.22500000000000000002250
|
||||
divide_test_19_19_19_19 4.44444444444444440000000 0.22500000000000000225000
|
||||
INSERT INTO cs12 VALUES (0.0000000000000000000000000000001234, 0.5678), (0.0000000000000000000000000000001234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.00000000001234567890123456789012345678, 0.4567890123), (0.00000000001234567890123456789012345678, -0.2234567890);
|
||||
INSERT INTO cs12 VALUES (0.000000000000000000004444444444444444444, 0.1000000000), (-0.0000000000000000000044444444444444444, -0.1000);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd1' at row 1
|
||||
SELECT "divide_test_38_38_10_10", d1 / d2 FROM cs12;
|
||||
divide_test_38_38_10_10 d1 / d2
|
||||
divide_test_38_38_10_10 0.00000000000000000000000000000021733005
|
||||
divide_test_38_38_10_10 -0.00000000000000000000000000000021733005
|
||||
divide_test_38_38_10_10 0.00000000002702709252806291262475591902
|
||||
divide_test_38_38_10_10 -0.00000000005524861856506211538788135356
|
||||
divide_test_38_38_10_10 0.00000000000000000004444444444444444440
|
||||
divide_test_38_38_10_10 0.00000000000000000004444444444444444400
|
||||
DROP PROCEDURE IF EXISTS deleteproc;
|
||||
DROP DATABASE mcol641_arithmetic_db;
|
74
mysql-test/columnstore/basic/r/mcol641-create.result
Normal file
74
mysql-test/columnstore/basic/r/mcol641-create.result
Normal file
@ -0,0 +1,74 @@
|
||||
DROP DATABASE IF EXISTS test_mcol641_create;
|
||||
CREATE DATABASE test_mcol641_create;
|
||||
USE test_mcol641_create;
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
CREATE TABLE cs1(d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(19), d5 DECIMAL(19,19),d6 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2(d1 DECIMAL(38) SIGNED, d2 DECIMAL(38,10) SIGNED, d3 DECIMAL(38,38) SIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs3(d1 DECIMAL(38) UNSIGNED ZEROFILL, d2 DECIMAL(38,10) UNSIGNED ZEROFILL, d3 DECIMAL(38,38) UNSIGNED ZEROFILL) ENGINE=columnstore;
|
||||
Warnings:
|
||||
Warning 1618 ZEROFILL is ignored in ColumnStore
|
||||
CREATE TABLE cs4(d1 DECIMAL(18), d2 DECIMAL(18,10), d3 DECIMAL(18,18)) ENGINE=columnstore;
|
||||
SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,COLUMN_LENGTH,COLUMN_POSITION,COLUMN_DEFAULT,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columnstore_columns WHERE table_name = 'cs1' OR table_name = 'cs2' OR table_name = 'cs3' OR table_name = 'cs4' ORDER BY table_name,column_name ASC;
|
||||
TABLE_SCHEMA TABLE_NAME COLUMN_NAME DATA_TYPE COLUMN_LENGTH COLUMN_POSITION COLUMN_DEFAULT NUMERIC_PRECISION NUMERIC_SCALE
|
||||
test_mcol641_create cs1 d1 decimal 16 0 NULL 38 0
|
||||
test_mcol641_create cs1 d2 decimal 16 1 NULL 38 10
|
||||
test_mcol641_create cs1 d3 decimal 16 2 NULL 38 38
|
||||
test_mcol641_create cs1 d4 decimal 16 3 NULL 19 0
|
||||
test_mcol641_create cs1 d5 decimal 16 4 NULL 19 19
|
||||
test_mcol641_create cs1 d6 decimal 16 5 NULL 19 10
|
||||
test_mcol641_create cs2 d1 decimal 16 0 NULL 38 0
|
||||
test_mcol641_create cs2 d2 decimal 16 1 NULL 38 10
|
||||
test_mcol641_create cs2 d3 decimal 16 2 NULL 38 38
|
||||
test_mcol641_create cs3 d1 udecimal 16 0 NULL 38 0
|
||||
test_mcol641_create cs3 d2 udecimal 16 1 NULL 38 10
|
||||
test_mcol641_create cs3 d3 udecimal 16 2 NULL 38 38
|
||||
test_mcol641_create cs4 d1 decimal 8 0 NULL 18 0
|
||||
test_mcol641_create cs4 d2 decimal 8 1 NULL 18 10
|
||||
test_mcol641_create cs4 d3 decimal 8 2 NULL 18 18
|
||||
ALTER TABLE cs1 DROP COLUMN d4;
|
||||
ALTER TABLE cs1 ADD COLUMN d7 DECIMAL(38,37);
|
||||
ALTER TABLE cs2 ADD COLUMN d4 DECIMAL(30,30) SIGNED;
|
||||
ALTER TABLE cs3 ADD COLUMN d5 DECIMAL(20,18) UNSIGNED;
|
||||
Warnings:
|
||||
Warning 1618 ZEROFILL is ignored in ColumnStore
|
||||
ALTER TABLE cs1 RENAME COLUMN d7 TO d17;
|
||||
ERROR 42000: The storage engine for the table doesn't support The syntax or the data type(s) is not supported by Columnstore. Please check the Columnstore syntax guide for supported syntax or data types.
|
||||
ALTER TABLE cs2 ADD COLUMN (d5 DECIMAL(38,5), d6 DECIMAL(35,15));
|
||||
ERROR 42000: The storage engine for the table doesn't support Multiple actions in alter table statement is currently not supported by Columnstore.
|
||||
ALTER TABLE cs3 MODIFY d1 DECIMAL(38) SIGNED;
|
||||
ERROR HY000: Internal error: CAL0001: Alter table Failed: Altertable: Error in the action type
|
||||
SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,COLUMN_LENGTH,COLUMN_POSITION,COLUMN_DEFAULT,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columnstore_columns WHERE table_schema = 'test_mcol641_create' ORDER BY table_name,column_name ASC;
|
||||
TABLE_SCHEMA TABLE_NAME COLUMN_NAME DATA_TYPE COLUMN_LENGTH COLUMN_POSITION COLUMN_DEFAULT NUMERIC_PRECISION NUMERIC_SCALE
|
||||
test_mcol641_create cs1 d1 decimal 16 0 NULL 38 0
|
||||
test_mcol641_create cs1 d2 decimal 16 1 NULL 38 10
|
||||
test_mcol641_create cs1 d3 decimal 16 2 NULL 38 38
|
||||
test_mcol641_create cs1 d5 decimal 16 3 NULL 19 19
|
||||
test_mcol641_create cs1 d6 decimal 16 4 NULL 19 10
|
||||
test_mcol641_create cs1 d7 decimal 16 5 NULL 38 37
|
||||
test_mcol641_create cs2 d1 decimal 16 0 NULL 38 0
|
||||
test_mcol641_create cs2 d2 decimal 16 1 NULL 38 10
|
||||
test_mcol641_create cs2 d3 decimal 16 2 NULL 38 38
|
||||
test_mcol641_create cs2 d4 decimal 16 3 NULL 30 30
|
||||
test_mcol641_create cs3 d1 udecimal 16 0 NULL 38 0
|
||||
test_mcol641_create cs3 d2 udecimal 16 1 NULL 38 10
|
||||
test_mcol641_create cs3 d3 udecimal 16 2 NULL 38 38
|
||||
test_mcol641_create cs3 d5 udecimal 16 3 NULL 20 18
|
||||
test_mcol641_create cs4 d1 decimal 8 0 NULL 18 0
|
||||
test_mcol641_create cs4 d2 decimal 8 1 NULL 18 10
|
||||
test_mcol641_create cs4 d3 decimal 8 2 NULL 18 18
|
||||
CREATE TABLE cs5(d1 DECIMAL(39)) ENGINE=columnstore;
|
||||
ERROR HY000: Internal error: CAL0009: (3)Create table failed due to Syntax error: The maximum precision (total number of digits) that can be specified is 38
|
||||
CREATE TABLE cs5(d1 DECIMAL(38,39)) ENGINE=columnstore;
|
||||
ERROR 42000: Too big scale 39 specified for 'd1'. Maximum is 38
|
||||
ALTER TABLE cs1 ADD COLUMN d10 DECIMAL(40);
|
||||
ERROR HY000: Internal error: CAL0001: Alter table Failed: AlterTableProcessor::addColumn Syntax error: The maximum precision (total number of digits) that can be specified is 38
|
||||
ALTER TABLE cs1 ADD COLUMN d11 DECIMAL(38,40);
|
||||
ERROR 42000: Too big scale 40 specified for 'd11'. Maximum is 38
|
||||
DROP TABLE cs1;
|
||||
DROP TABLE cs2;
|
||||
DROP TABLE cs3;
|
||||
DROP TABLE cs4;
|
||||
DROP DATABASE test_mcol641_create;
|
730
mysql-test/columnstore/basic/r/mcol641-delete.result
Normal file
730
mysql-test/columnstore/basic/r/mcol641-delete.result
Normal file
@ -0,0 +1,730 @@
|
||||
DROP DATABASE IF EXISTS mcol641_delete_db;
|
||||
CREATE DATABASE mcol641_delete_db;
|
||||
USE mcol641_delete_db;
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_delete_db.signedinsertproc does not exist
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_delete_db.signeddeleteproc does not exist
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_delete_db.unsignedinsertproc does not exist
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_delete_db.unsigneddeleteproc does not exist
|
||||
CREATE PROCEDURE signedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs1 VALUES (125, 125);
|
||||
INSERT INTO cs1 VALUES (-125, -125);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999);
|
||||
INSERT INTO cs1 VALUES (0, 0);
|
||||
INSERT INTO cs1 VALUES (NULL, NULL);
|
||||
INSERT INTO cs2 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs2 VALUES (-1.25, -1.25);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999998, -999999999.9999999998);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999999, -999999999.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs2 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs2 VALUES (-1.1234567891, -1.1234567891);
|
||||
INSERT INTO cs2 VALUES (-1.9999999999, -1.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs2 VALUES (-1.0000000009, -1.0000000009);
|
||||
INSERT INTO cs2 VALUES (0, 0);
|
||||
INSERT INTO cs2 VALUES (NULL, NULL);
|
||||
INSERT INTO cs3 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs3 VALUES (-0.125, -0.125);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999999, -0.9999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (-0.12345678901234567890123456789012345678, -0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (-0.19999999999999999999999999999999999999, -0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (-0.00000000000000000000000000000000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (0, 0);
|
||||
INSERT INTO cs3 VALUES (NULL, NULL);
|
||||
END//
|
||||
CREATE PROCEDURE unsignedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs4 VALUES (125, 125);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs4 VALUES (0, 0);
|
||||
INSERT INTO cs4 VALUES (NULL, NULL);
|
||||
INSERT INTO cs5 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs5 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs5 VALUES (0, 0);
|
||||
INSERT INTO cs5 VALUES (NULL, NULL);
|
||||
INSERT INTO cs6 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs6 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs6 VALUES (0, 0);
|
||||
INSERT INTO cs6 VALUES (NULL, NULL);
|
||||
END//
|
||||
CREATE PROCEDURE signeddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
END//
|
||||
CREATE PROCEDURE unsigneddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
END//
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_delete_db.cs1'
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_delete_db.cs2'
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_delete_db.cs3'
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_delete_db.cs4'
|
||||
DROP TABLE IF EXISTS cs5;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_delete_db.cs5'
|
||||
DROP TABLE IF EXISTS cs6;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_delete_db.cs6'
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38,38), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(19) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs5 (d1 DECIMAL(38,10) UNSIGNED, d2 DECIMAL(19,10) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs6 (d1 DECIMAL(38,38) UNSIGNED, d2 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
SELECT "signedtest1", d1, d2 FROM cs1;
|
||||
signedtest1 d1 d2
|
||||
SELECT "signedtest1", d1, d2 FROM cs2;
|
||||
signedtest1 d1 d2
|
||||
SELECT "signedtest1", d1, d2 FROM cs3;
|
||||
signedtest1 d1 d2
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1=-99999999999999999999999999999999999998;
|
||||
DELETE FROM cs1 WHERE d2=9999999999999999999;
|
||||
DELETE FROM cs2 WHERE d1=-9999999999999999999999999999.9999999998;
|
||||
DELETE FROM cs2 WHERE d2=999999999.9999999999;
|
||||
DELETE FROM cs3 WHERE d1=-0.99999999999999999999999999999999999998;
|
||||
DELETE FROM cs3 WHERE d2=0.9999999999999999999;
|
||||
SELECT "signedtest2", d1, d2 FROM cs1;
|
||||
signedtest2 d1 d2
|
||||
signedtest2 125 125
|
||||
signedtest2 -125 -125
|
||||
signedtest2 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest2 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest2 0 0
|
||||
signedtest2 NULL NULL
|
||||
SELECT "signedtest2", d1, d2 FROM cs2;
|
||||
signedtest2 d1 d2
|
||||
signedtest2 1.2500000000 1.2500000000
|
||||
signedtest2 -1.2500000000 -1.2500000000
|
||||
signedtest2 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest2 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest2 1.1234567891 1.1234567891
|
||||
signedtest2 1.9999999999 1.9999999999
|
||||
signedtest2 -1.1234567891 -1.1234567891
|
||||
signedtest2 -1.9999999999 -1.9999999999
|
||||
signedtest2 1.0000000009 1.0000000009
|
||||
signedtest2 -1.0000000009 -1.0000000009
|
||||
signedtest2 0.0000000000 0.0000000000
|
||||
signedtest2 NULL NULL
|
||||
SELECT "signedtest2", d1, d2 FROM cs3;
|
||||
signedtest2 d1 d2
|
||||
signedtest2 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest2 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest2 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest2 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest2 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest2 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest2 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest2 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest2 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest2 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest2 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest2 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 in (-99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
DELETE FROM cs2 WHERE d1 in (-9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
DELETE FROM cs3 WHERE d1 in (-0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "signedtest3", d1, d2 FROM cs1;
|
||||
signedtest3 d1 d2
|
||||
signedtest3 125 125
|
||||
signedtest3 -125 -125
|
||||
signedtest3 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest3 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest3 0 0
|
||||
signedtest3 NULL NULL
|
||||
SELECT "signedtest3", d1, d2 FROM cs2;
|
||||
signedtest3 d1 d2
|
||||
signedtest3 1.2500000000 1.2500000000
|
||||
signedtest3 -1.2500000000 -1.2500000000
|
||||
signedtest3 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest3 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest3 1.1234567891 1.1234567891
|
||||
signedtest3 1.9999999999 1.9999999999
|
||||
signedtest3 -1.1234567891 -1.1234567891
|
||||
signedtest3 -1.9999999999 -1.9999999999
|
||||
signedtest3 1.0000000009 1.0000000009
|
||||
signedtest3 -1.0000000009 -1.0000000009
|
||||
signedtest3 0.0000000000 0.0000000000
|
||||
signedtest3 NULL NULL
|
||||
SELECT "signedtest3", d1, d2 FROM cs3;
|
||||
signedtest3 d1 d2
|
||||
signedtest3 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest3 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest3 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest3 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest3 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest3 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest3 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest3 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest3 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest3 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest3 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 <= -99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
DELETE FROM cs2 WHERE d1 <= -9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
DELETE FROM cs3 WHERE d1 <= -0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs1;
|
||||
signedtest4a d1 d2
|
||||
signedtest4a 125 125
|
||||
signedtest4a -125 -125
|
||||
signedtest4a 0 0
|
||||
signedtest4a NULL NULL
|
||||
SELECT "signedtest4a", d1, d2 FROM cs2;
|
||||
signedtest4a d1 d2
|
||||
signedtest4a 1.2500000000 1.2500000000
|
||||
signedtest4a -1.2500000000 -1.2500000000
|
||||
signedtest4a 1.1234567891 1.1234567891
|
||||
signedtest4a 1.9999999999 1.9999999999
|
||||
signedtest4a -1.1234567891 -1.1234567891
|
||||
signedtest4a -1.9999999999 -1.9999999999
|
||||
signedtest4a 1.0000000009 1.0000000009
|
||||
signedtest4a -1.0000000009 -1.0000000009
|
||||
signedtest4a 0.0000000000 0.0000000000
|
||||
signedtest4a NULL NULL
|
||||
SELECT "signedtest4a", d1, d2 FROM cs3;
|
||||
signedtest4a d1 d2
|
||||
signedtest4a 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest4a -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4a 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest4a -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest4a -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest4a 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest4a -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest4a 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest4a NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 < -99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
DELETE FROM cs2 WHERE d1 < -9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
DELETE FROM cs3 WHERE d1 < -0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "signedtest4", d1, d2 FROM cs1;
|
||||
signedtest4 d1 d2
|
||||
signedtest4 125 125
|
||||
signedtest4 -125 -125
|
||||
signedtest4 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest4 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest4 0 0
|
||||
signedtest4 NULL NULL
|
||||
SELECT "signedtest4", d1, d2 FROM cs2;
|
||||
signedtest4 d1 d2
|
||||
signedtest4 1.2500000000 1.2500000000
|
||||
signedtest4 -1.2500000000 -1.2500000000
|
||||
signedtest4 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest4 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest4 1.1234567891 1.1234567891
|
||||
signedtest4 1.9999999999 1.9999999999
|
||||
signedtest4 -1.1234567891 -1.1234567891
|
||||
signedtest4 -1.9999999999 -1.9999999999
|
||||
signedtest4 1.0000000009 1.0000000009
|
||||
signedtest4 -1.0000000009 -1.0000000009
|
||||
signedtest4 0.0000000000 0.0000000000
|
||||
signedtest4 NULL NULL
|
||||
SELECT "signedtest4", d1, d2 FROM cs3;
|
||||
signedtest4 d1 d2
|
||||
signedtest4 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest4 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest4 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest4 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest4 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest4 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest4 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest4 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest4 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest4 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest4 NULL NULL
|
||||
DELETE FROM cs1 WHERE d1 is NULL;
|
||||
DELETE FROM cs2 WHERE d1 is NULL;
|
||||
DELETE FROM cs3 WHERE d1 is NULL;
|
||||
SELECT "signedtest5", d1, d2 FROM cs1;
|
||||
signedtest5 d1 d2
|
||||
signedtest5 125 125
|
||||
signedtest5 -125 -125
|
||||
signedtest5 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest5 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest5 0 0
|
||||
SELECT "signedtest5", d1, d2 FROM cs2;
|
||||
signedtest5 d1 d2
|
||||
signedtest5 1.2500000000 1.2500000000
|
||||
signedtest5 -1.2500000000 -1.2500000000
|
||||
signedtest5 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest5 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest5 1.1234567891 1.1234567891
|
||||
signedtest5 1.9999999999 1.9999999999
|
||||
signedtest5 -1.1234567891 -1.1234567891
|
||||
signedtest5 -1.9999999999 -1.9999999999
|
||||
signedtest5 1.0000000009 1.0000000009
|
||||
signedtest5 -1.0000000009 -1.0000000009
|
||||
signedtest5 0.0000000000 0.0000000000
|
||||
SELECT "signedtest5", d1, d2 FROM cs3;
|
||||
signedtest5 d1 d2
|
||||
signedtest5 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest5 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest5 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest5 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest5 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest5 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest5 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest5 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest5 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest5 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest5 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
DELETE FROM cs1 WHERE d1 != 125;
|
||||
DELETE FROM cs2 WHERE d1 != 1.25;
|
||||
DELETE FROM cs3 WHERE d1 != 0.125;
|
||||
SELECT "signedtest6", d1, d2 FROM cs1;
|
||||
signedtest6 d1 d2
|
||||
signedtest6 125 125
|
||||
SELECT "signedtest6", d1, d2 FROM cs2;
|
||||
signedtest6 d1 d2
|
||||
signedtest6 1.2500000000 1.2500000000
|
||||
SELECT "signedtest6", d1, d2 FROM cs3;
|
||||
signedtest6 d1 d2
|
||||
signedtest6 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 = d2;
|
||||
DELETE FROM cs2 WHERE d1 = d2;
|
||||
DELETE FROM cs3 WHERE d1 = d2;
|
||||
SELECT "signedtest7", d1, d2 FROM cs1;
|
||||
signedtest7 d1 d2
|
||||
signedtest7 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest7 99999999999999999999999999999999999999 9999999999999999999
|
||||
signedtest7 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest7 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest7 NULL NULL
|
||||
SELECT "signedtest7", d1, d2 FROM cs2;
|
||||
signedtest7 d1 d2
|
||||
signedtest7 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest7 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
signedtest7 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest7 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest7 NULL NULL
|
||||
SELECT "signedtest7", d1, d2 FROM cs3;
|
||||
signedtest7 d1 d2
|
||||
signedtest7 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest7 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
signedtest7 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest7 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest7 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest7 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest7 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest7 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest7 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest7 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest7 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 != d2;
|
||||
DELETE FROM cs2 WHERE d1 != d2;
|
||||
DELETE FROM cs3 WHERE d1 != d2;
|
||||
SELECT "signedtest8", d1, d2 FROM cs1;
|
||||
signedtest8 d1 d2
|
||||
signedtest8 125 125
|
||||
signedtest8 -125 -125
|
||||
signedtest8 0 0
|
||||
signedtest8 NULL NULL
|
||||
SELECT "signedtest8", d1, d2 FROM cs2;
|
||||
signedtest8 d1 d2
|
||||
signedtest8 1.2500000000 1.2500000000
|
||||
signedtest8 -1.2500000000 -1.2500000000
|
||||
signedtest8 1.1234567891 1.1234567891
|
||||
signedtest8 1.9999999999 1.9999999999
|
||||
signedtest8 -1.1234567891 -1.1234567891
|
||||
signedtest8 -1.9999999999 -1.9999999999
|
||||
signedtest8 1.0000000009 1.0000000009
|
||||
signedtest8 -1.0000000009 -1.0000000009
|
||||
signedtest8 0.0000000000 0.0000000000
|
||||
signedtest8 NULL NULL
|
||||
SELECT "signedtest8", d1, d2 FROM cs3;
|
||||
signedtest8 d1 d2
|
||||
signedtest8 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest8 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest8 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest8 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 < d2;
|
||||
DELETE FROM cs2 WHERE d1 < d2;
|
||||
DELETE FROM cs3 WHERE d1 < d2;
|
||||
SELECT "signedtest9", d1, d2 FROM cs1;
|
||||
signedtest9 d1 d2
|
||||
signedtest9 125 125
|
||||
signedtest9 -125 -125
|
||||
signedtest9 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest9 99999999999999999999999999999999999999 9999999999999999999
|
||||
signedtest9 0 0
|
||||
signedtest9 NULL NULL
|
||||
SELECT "signedtest9", d1, d2 FROM cs2;
|
||||
signedtest9 d1 d2
|
||||
signedtest9 1.2500000000 1.2500000000
|
||||
signedtest9 -1.2500000000 -1.2500000000
|
||||
signedtest9 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest9 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
signedtest9 1.1234567891 1.1234567891
|
||||
signedtest9 1.9999999999 1.9999999999
|
||||
signedtest9 -1.1234567891 -1.1234567891
|
||||
signedtest9 -1.9999999999 -1.9999999999
|
||||
signedtest9 1.0000000009 1.0000000009
|
||||
signedtest9 -1.0000000009 -1.0000000009
|
||||
signedtest9 0.0000000000 0.0000000000
|
||||
signedtest9 NULL NULL
|
||||
SELECT "signedtest9", d1, d2 FROM cs3;
|
||||
signedtest9 d1 d2
|
||||
signedtest9 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest9 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest9 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest9 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest9 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest9 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest9 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 > d2;
|
||||
DELETE FROM cs2 WHERE d1 > d2;
|
||||
DELETE FROM cs3 WHERE d1 > d2;
|
||||
SELECT "signedtest10", d1, d2 FROM cs1;
|
||||
signedtest10 d1 d2
|
||||
signedtest10 125 125
|
||||
signedtest10 -125 -125
|
||||
signedtest10 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest10 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest10 0 0
|
||||
signedtest10 NULL NULL
|
||||
SELECT "signedtest10", d1, d2 FROM cs2;
|
||||
signedtest10 d1 d2
|
||||
signedtest10 1.2500000000 1.2500000000
|
||||
signedtest10 -1.2500000000 -1.2500000000
|
||||
signedtest10 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest10 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest10 1.1234567891 1.1234567891
|
||||
signedtest10 1.9999999999 1.9999999999
|
||||
signedtest10 -1.1234567891 -1.1234567891
|
||||
signedtest10 -1.9999999999 -1.9999999999
|
||||
signedtest10 1.0000000009 1.0000000009
|
||||
signedtest10 -1.0000000009 -1.0000000009
|
||||
signedtest10 0.0000000000 0.0000000000
|
||||
signedtest10 NULL NULL
|
||||
SELECT "signedtest10", d1, d2 FROM cs3;
|
||||
signedtest10 d1 d2
|
||||
signedtest10 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest10 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest10 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest10 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest10 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest10 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest10 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest10 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest10 NULL NULL
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs4;
|
||||
unsignedtest1 d1 d2
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs5;
|
||||
unsignedtest1 d1 d2
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs6;
|
||||
unsignedtest1 d1 d2
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1=99999999999999999999999999999999999998;
|
||||
DELETE FROM cs4 WHERE d2=9999999999999999999;
|
||||
DELETE FROM cs5 WHERE d1=9999999999999999999999999999.9999999998;
|
||||
DELETE FROM cs5 WHERE d2=999999999.9999999999;
|
||||
DELETE FROM cs6 WHERE d1=0.99999999999999999999999999999999999998;
|
||||
DELETE FROM cs6 WHERE d2=0.9999999999999999999;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs4;
|
||||
unsignedtest2 d1 d2
|
||||
unsignedtest2 125 125
|
||||
unsignedtest2 0 0
|
||||
unsignedtest2 NULL NULL
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs5;
|
||||
unsignedtest2 d1 d2
|
||||
unsignedtest2 1.2500000000 1.2500000000
|
||||
unsignedtest2 1.1234567891 1.1234567891
|
||||
unsignedtest2 1.9999999999 1.9999999999
|
||||
unsignedtest2 1.0000000009 1.0000000009
|
||||
unsignedtest2 0.0000000000 0.0000000000
|
||||
unsignedtest2 NULL NULL
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs6;
|
||||
unsignedtest2 d1 d2
|
||||
unsignedtest2 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest2 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest2 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest2 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest2 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest2 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 in (99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
DELETE FROM cs5 WHERE d1 in (9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
DELETE FROM cs6 WHERE d1 in (0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs4;
|
||||
unsignedtest3 d1 d2
|
||||
unsignedtest3 125 125
|
||||
unsignedtest3 0 0
|
||||
unsignedtest3 NULL NULL
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs5;
|
||||
unsignedtest3 d1 d2
|
||||
unsignedtest3 1.2500000000 1.2500000000
|
||||
unsignedtest3 1.1234567891 1.1234567891
|
||||
unsignedtest3 1.9999999999 1.9999999999
|
||||
unsignedtest3 1.0000000009 1.0000000009
|
||||
unsignedtest3 0.0000000000 0.0000000000
|
||||
unsignedtest3 NULL NULL
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs6;
|
||||
unsignedtest3 d1 d2
|
||||
unsignedtest3 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest3 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest3 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest3 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest3 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 >= 99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
DELETE FROM cs5 WHERE d1 >= 9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
DELETE FROM cs6 WHERE d1 >= 0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs4;
|
||||
unsignedtest4a d1 d2
|
||||
unsignedtest4a 125 125
|
||||
unsignedtest4a 0 0
|
||||
unsignedtest4a NULL NULL
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs5;
|
||||
unsignedtest4a d1 d2
|
||||
unsignedtest4a 1.2500000000 1.2500000000
|
||||
unsignedtest4a 1.1234567891 1.1234567891
|
||||
unsignedtest4a 1.9999999999 1.9999999999
|
||||
unsignedtest4a 1.0000000009 1.0000000009
|
||||
unsignedtest4a 0.0000000000 0.0000000000
|
||||
unsignedtest4a NULL NULL
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs6;
|
||||
unsignedtest4a d1 d2
|
||||
unsignedtest4a 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4a 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest4a 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest4a 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest4a NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 > 99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
DELETE FROM cs5 WHERE d1 > 9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
DELETE FROM cs6 WHERE d1 > 0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "unsignedtest4", d1, d2 FROM cs4;
|
||||
unsignedtest4 d1 d2
|
||||
unsignedtest4 125 125
|
||||
unsignedtest4 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest4 0 0
|
||||
unsignedtest4 NULL NULL
|
||||
SELECT "unsignedtest4", d1, d2 FROM cs5;
|
||||
unsignedtest4 d1 d2
|
||||
unsignedtest4 1.2500000000 1.2500000000
|
||||
unsignedtest4 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest4 1.1234567891 1.1234567891
|
||||
unsignedtest4 1.9999999999 1.9999999999
|
||||
unsignedtest4 1.0000000009 1.0000000009
|
||||
unsignedtest4 0.0000000000 0.0000000000
|
||||
unsignedtest4 NULL NULL
|
||||
SELECT "unsignedtest4", d1, d2 FROM cs6;
|
||||
unsignedtest4 d1 d2
|
||||
unsignedtest4 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest4 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest4 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest4 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest4 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest4 NULL NULL
|
||||
DELETE FROM cs4 WHERE d1 is NULL;
|
||||
DELETE FROM cs5 WHERE d1 is NULL;
|
||||
DELETE FROM cs6 WHERE d1 is NULL;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs4;
|
||||
unsignedtest5 d1 d2
|
||||
unsignedtest5 125 125
|
||||
unsignedtest5 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest5 0 0
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs5;
|
||||
unsignedtest5 d1 d2
|
||||
unsignedtest5 1.2500000000 1.2500000000
|
||||
unsignedtest5 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest5 1.1234567891 1.1234567891
|
||||
unsignedtest5 1.9999999999 1.9999999999
|
||||
unsignedtest5 1.0000000009 1.0000000009
|
||||
unsignedtest5 0.0000000000 0.0000000000
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs6;
|
||||
unsignedtest5 d1 d2
|
||||
unsignedtest5 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest5 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest5 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest5 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest5 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest5 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
DELETE FROM cs4 WHERE d1 != 125;
|
||||
DELETE FROM cs5 WHERE d1 != 1.25;
|
||||
DELETE FROM cs6 WHERE d1 != 0.125;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs4;
|
||||
unsignedtest6 d1 d2
|
||||
unsignedtest6 125 125
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs5;
|
||||
unsignedtest6 d1 d2
|
||||
unsignedtest6 1.2500000000 1.2500000000
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs6;
|
||||
unsignedtest6 d1 d2
|
||||
unsignedtest6 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 = d2;
|
||||
DELETE FROM cs5 WHERE d1 = d2;
|
||||
DELETE FROM cs6 WHERE d1 = d2;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs4;
|
||||
unsignedtest7 d1 d2
|
||||
unsignedtest7 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest7 99999999999999999999999999999999999999 9999999999999999999
|
||||
unsignedtest7 NULL NULL
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs5;
|
||||
unsignedtest7 d1 d2
|
||||
unsignedtest7 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest7 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
unsignedtest7 NULL NULL
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs6;
|
||||
unsignedtest7 d1 d2
|
||||
unsignedtest7 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest7 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
unsignedtest7 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest7 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest7 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest7 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 != d2;
|
||||
DELETE FROM cs5 WHERE d1 != d2;
|
||||
DELETE FROM cs6 WHERE d1 != d2;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs4;
|
||||
unsignedtest8 d1 d2
|
||||
unsignedtest8 125 125
|
||||
unsignedtest8 0 0
|
||||
unsignedtest8 NULL NULL
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs5;
|
||||
unsignedtest8 d1 d2
|
||||
unsignedtest8 1.2500000000 1.2500000000
|
||||
unsignedtest8 1.1234567891 1.1234567891
|
||||
unsignedtest8 1.9999999999 1.9999999999
|
||||
unsignedtest8 1.0000000009 1.0000000009
|
||||
unsignedtest8 0.0000000000 0.0000000000
|
||||
unsignedtest8 NULL NULL
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs6;
|
||||
unsignedtest8 d1 d2
|
||||
unsignedtest8 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest8 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest8 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 < d2;
|
||||
DELETE FROM cs5 WHERE d1 < d2;
|
||||
DELETE FROM cs6 WHERE d1 < d2;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs4;
|
||||
unsignedtest9 d1 d2
|
||||
unsignedtest9 125 125
|
||||
unsignedtest9 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest9 99999999999999999999999999999999999999 9999999999999999999
|
||||
unsignedtest9 0 0
|
||||
unsignedtest9 NULL NULL
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs5;
|
||||
unsignedtest9 d1 d2
|
||||
unsignedtest9 1.2500000000 1.2500000000
|
||||
unsignedtest9 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest9 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
unsignedtest9 1.1234567891 1.1234567891
|
||||
unsignedtest9 1.9999999999 1.9999999999
|
||||
unsignedtest9 1.0000000009 1.0000000009
|
||||
unsignedtest9 0.0000000000 0.0000000000
|
||||
unsignedtest9 NULL NULL
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs6;
|
||||
unsignedtest9 d1 d2
|
||||
unsignedtest9 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest9 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest9 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
unsignedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest9 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest9 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest9 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 > d2;
|
||||
DELETE FROM cs5 WHERE d1 > d2;
|
||||
DELETE FROM cs6 WHERE d1 > d2;
|
||||
SELECT "unsignedtest10", d1, d2 FROM cs4;
|
||||
unsignedtest10 d1 d2
|
||||
unsignedtest10 125 125
|
||||
unsignedtest10 0 0
|
||||
unsignedtest10 NULL NULL
|
||||
SELECT "unsignedtest10", d1, d2 FROM cs5;
|
||||
unsignedtest10 d1 d2
|
||||
unsignedtest10 1.2500000000 1.2500000000
|
||||
unsignedtest10 1.1234567891 1.1234567891
|
||||
unsignedtest10 1.9999999999 1.9999999999
|
||||
unsignedtest10 1.0000000009 1.0000000009
|
||||
unsignedtest10 0.0000000000 0.0000000000
|
||||
unsignedtest10 NULL NULL
|
||||
SELECT "unsignedtest10", d1, d2 FROM cs6;
|
||||
unsignedtest10 d1 d2
|
||||
unsignedtest10 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest10 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest10 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest10 NULL NULL
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
DROP DATABASE mcol641_delete_db;
|
1278
mysql-test/columnstore/basic/r/mcol641-functions.result
Normal file
1278
mysql-test/columnstore/basic/r/mcol641-functions.result
Normal file
File diff suppressed because it is too large
Load Diff
692
mysql-test/columnstore/basic/r/mcol641-insert.result
Normal file
692
mysql-test/columnstore/basic/r/mcol641-insert.result
Normal file
@ -0,0 +1,692 @@
|
||||
DROP DATABASE IF EXISTS mcol641_insert_db;
|
||||
CREATE DATABASE mcol641_insert_db;
|
||||
USE mcol641_insert_db;
|
||||
SET SQL_MODE='ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38),
|
||||
d4 DECIMAL(19), d5 DECIMAL(19,10), d6 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED,
|
||||
d4 DECIMAL(19) UNSIGNED, d5 DECIMAL(19,10) UNSIGNED, d6 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38),
|
||||
d4 DECIMAL(19), d5 DECIMAL(19,10), d6 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED,
|
||||
d4 DECIMAL(19) UNSIGNED, d5 DECIMAL(19,10) UNSIGNED, d6 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125);
|
||||
INSERT INTO cs1 VALUES (-125, -1.25, -0.125, -125, -1.25, -0.125);
|
||||
INSERT INTO cs1 VALUES (1.25, 125, 125, 1.25, 125, 125);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (-1.25, -125, -125, -1.25, -125, -125);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
INSERT INTO cs1 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs1 VALUES (0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs1 VALUES (0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs1 VALUES (0, 0, 0, 0, 0, 0);
|
||||
INSERT INTO cs1 VALUES (NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO cs1 VALUES ();
|
||||
SELECT "test1", d1, d2, d3, d4, d5, d6 FROM cs1;
|
||||
test1 d1 d2 d3 d4 d5 d6
|
||||
test1 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
test1 -125 -1.2500000000 -0.12500000000000000000000000000000000000 -125 -1.2500000000 -0.1250000000000000000
|
||||
test1 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
test1 -1 -125.0000000000 -0.99999999999999999999999999999999999999 -1 -125.0000000000 -0.9999999999999999999
|
||||
test1 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
test1 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
test1 -99999999999999999999999999999999999998 -9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998 -9999999999999999998 -999999999.9999999998 -0.9999999999999999998
|
||||
test1 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999 -9999999999999999999 -999999999.9999999999 -0.9999999999999999999
|
||||
test1 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
test1 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.12345678901234567890123456789012345679 -9999999999999999999 -999999999.9999999999 -0.1234567890123456789
|
||||
test1 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
test1 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
test1 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
test1 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
test1 0 -1.1234567892 -0.12345678901234567890123456789012345679 0 -1.1234567892 -0.1234567890123456790
|
||||
test1 0 -1.1234567891 -0.12345678901234567890123456789012345678 0 -1.1234567891 -0.1234567890123456789
|
||||
test1 0 -2.0000000000 -0.99999999999999999999999999999999999999 0 -2.0000000000 -0.9999999999999999999
|
||||
test1 0 -1.9999999999 -0.99999999999999999999999999999999999999 0 -1.9999999999 -0.9999999999999999999
|
||||
test1 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
test1 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
test1 0 -1.0000000009 -0.00000000000000000000000000000000000009 0 -1.0000000009 -0.0000000000000000009
|
||||
test1 0 -1.0000000001 -0.00000000000000000000000000000000000001 0 -1.0000000001 -0.0000000000000000001
|
||||
test1 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test1 NULL NULL NULL NULL NULL NULL
|
||||
test1 NULL NULL NULL NULL NULL NULL
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38),
|
||||
d4 DECIMAL(19), d5 DECIMAL(19,10), d6 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125),
|
||||
(-125, -1.25, -0.125, -125, -1.25, -0.125),
|
||||
(1.25, 125, 125, 1.25, 125, 125),
|
||||
(-1.25, -125, -125, -1.25, -125, -125);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd1' at row 3
|
||||
Warning 1264 Out of range value for column 'd3' at row 3
|
||||
Note 1265 Data truncated for column 'd4' at row 3
|
||||
Warning 1264 Out of range value for column 'd6' at row 3
|
||||
Note 1265 Data truncated for column 'd1' at row 4
|
||||
Warning 1264 Out of range value for column 'd3' at row 4
|
||||
Note 1265 Data truncated for column 'd4' at row 4
|
||||
Warning 1264 Out of range value for column 'd6' at row 4
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999),
|
||||
(-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998),
|
||||
(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
INSERT INTO cs1 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891),
|
||||
(-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
Warning 1264 Out of range value for column 'd1' at row 2
|
||||
Warning 1264 Out of range value for column 'd2' at row 2
|
||||
Note 1265 Data truncated for column 'd3' at row 2
|
||||
Warning 1264 Out of range value for column 'd4' at row 2
|
||||
Warning 1264 Out of range value for column 'd5' at row 2
|
||||
Note 1265 Data truncated for column 'd6' at row 2
|
||||
INSERT INTO cs1 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899),
|
||||
(0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894),
|
||||
(0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999),
|
||||
(0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994),
|
||||
(0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899),
|
||||
(0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894),
|
||||
(0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999),
|
||||
(0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
Note 1265 Data truncated for column 'd2' at row 2
|
||||
Note 1265 Data truncated for column 'd3' at row 2
|
||||
Note 1265 Data truncated for column 'd5' at row 2
|
||||
Note 1265 Data truncated for column 'd6' at row 2
|
||||
Note 1265 Data truncated for column 'd2' at row 3
|
||||
Warning 1264 Out of range value for column 'd3' at row 3
|
||||
Note 1265 Data truncated for column 'd5' at row 3
|
||||
Warning 1264 Out of range value for column 'd6' at row 3
|
||||
Note 1265 Data truncated for column 'd2' at row 4
|
||||
Note 1265 Data truncated for column 'd3' at row 4
|
||||
Note 1265 Data truncated for column 'd5' at row 4
|
||||
Note 1265 Data truncated for column 'd6' at row 4
|
||||
Note 1265 Data truncated for column 'd2' at row 5
|
||||
Note 1265 Data truncated for column 'd3' at row 5
|
||||
Note 1265 Data truncated for column 'd5' at row 5
|
||||
Note 1265 Data truncated for column 'd6' at row 5
|
||||
Note 1265 Data truncated for column 'd2' at row 6
|
||||
Note 1265 Data truncated for column 'd3' at row 6
|
||||
Note 1265 Data truncated for column 'd5' at row 6
|
||||
Note 1265 Data truncated for column 'd6' at row 6
|
||||
Note 1265 Data truncated for column 'd2' at row 7
|
||||
Warning 1264 Out of range value for column 'd3' at row 7
|
||||
Note 1265 Data truncated for column 'd5' at row 7
|
||||
Warning 1264 Out of range value for column 'd6' at row 7
|
||||
Note 1265 Data truncated for column 'd2' at row 8
|
||||
Note 1265 Data truncated for column 'd3' at row 8
|
||||
Note 1265 Data truncated for column 'd5' at row 8
|
||||
Note 1265 Data truncated for column 'd6' at row 8
|
||||
INSERT INTO cs1 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009),
|
||||
(0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009),
|
||||
(0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009),
|
||||
(0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 2
|
||||
Note 1265 Data truncated for column 'd3' at row 2
|
||||
Note 1265 Data truncated for column 'd5' at row 2
|
||||
Note 1265 Data truncated for column 'd6' at row 2
|
||||
Note 1265 Data truncated for column 'd2' at row 4
|
||||
Note 1265 Data truncated for column 'd3' at row 4
|
||||
Note 1265 Data truncated for column 'd5' at row 4
|
||||
Note 1265 Data truncated for column 'd6' at row 4
|
||||
INSERT INTO cs1 VALUES (0, 0, 0, 0, 0, 0),
|
||||
(NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789000000001, 1234567890123456789012345678.0010000008, 0.00001000000000000000000000000000000009, 1234567890120000001, 123456789.0020000009, 0.0000000070000000009),
|
||||
(-12345678901234567890123456789000000001, -1234567890123456789012345678.0010000008, -0.00001000000000000000000000000000000009, -1234567890120000001, -123456789.0020000009, -0.0000000070000000009);
|
||||
SELECT "test2", d1, d2, d3, d4, d5, d6 FROM cs1;
|
||||
test2 d1 d2 d3 d4 d5 d6
|
||||
test2 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
test2 -125 -1.2500000000 -0.12500000000000000000000000000000000000 -125 -1.2500000000 -0.1250000000000000000
|
||||
test2 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
test2 -1 -125.0000000000 -0.99999999999999999999999999999999999999 -1 -125.0000000000 -0.9999999999999999999
|
||||
test2 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
test2 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
test2 -99999999999999999999999999999999999998 -9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998 -9999999999999999998 -999999999.9999999998 -0.9999999999999999998
|
||||
test2 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999 -9999999999999999999 -999999999.9999999999 -0.9999999999999999999
|
||||
test2 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
test2 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.12345678901234567890123456789012345679 -9999999999999999999 -999999999.9999999999 -0.1234567890123456789
|
||||
test2 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
test2 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
test2 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
test2 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
test2 0 -1.1234567892 -0.12345678901234567890123456789012345679 0 -1.1234567892 -0.1234567890123456790
|
||||
test2 0 -1.1234567891 -0.12345678901234567890123456789012345678 0 -1.1234567891 -0.1234567890123456789
|
||||
test2 0 -2.0000000000 -0.99999999999999999999999999999999999999 0 -2.0000000000 -0.9999999999999999999
|
||||
test2 0 -1.9999999999 -0.99999999999999999999999999999999999999 0 -1.9999999999 -0.9999999999999999999
|
||||
test2 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
test2 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
test2 0 -1.0000000009 -0.00000000000000000000000000000000000009 0 -1.0000000009 -0.0000000000000000009
|
||||
test2 0 -1.0000000001 -0.00000000000000000000000000000000000001 0 -1.0000000001 -0.0000000000000000001
|
||||
test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test2 NULL NULL NULL NULL NULL NULL
|
||||
test2 12345678901234567890123456789000000001 1234567890123456789012345678.0010000008 0.00001000000000000000000000000000000009 1234567890120000001 123456789.0020000009 0.0000000070000000009
|
||||
test2 -12345678901234567890123456789000000001 -1234567890123456789012345678.0010000008 -0.00001000000000000000000000000000000009 -1234567890120000001 -123456789.0020000009 -0.0000000070000000009
|
||||
INSERT INTO cs3 SELECT * FROM cs1;
|
||||
SELECT "insert_select_test1", d1, d2, d3, d4, d5, d6 FROM cs3;
|
||||
insert_select_test1 d1 d2 d3 d4 d5 d6
|
||||
insert_select_test1 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
insert_select_test1 -125 -1.2500000000 -0.12500000000000000000000000000000000000 -125 -1.2500000000 -0.1250000000000000000
|
||||
insert_select_test1 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
insert_select_test1 -1 -125.0000000000 -0.99999999999999999999999999999999999999 -1 -125.0000000000 -0.9999999999999999999
|
||||
insert_select_test1 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
insert_select_test1 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
insert_select_test1 -99999999999999999999999999999999999998 -9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998 -9999999999999999998 -999999999.9999999998 -0.9999999999999999998
|
||||
insert_select_test1 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999 -9999999999999999999 -999999999.9999999999 -0.9999999999999999999
|
||||
insert_select_test1 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
insert_select_test1 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.12345678901234567890123456789012345679 -9999999999999999999 -999999999.9999999999 -0.1234567890123456789
|
||||
insert_select_test1 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
insert_select_test1 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
insert_select_test1 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
insert_select_test1 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
insert_select_test1 0 -1.1234567892 -0.12345678901234567890123456789012345679 0 -1.1234567892 -0.1234567890123456790
|
||||
insert_select_test1 0 -1.1234567891 -0.12345678901234567890123456789012345678 0 -1.1234567891 -0.1234567890123456789
|
||||
insert_select_test1 0 -2.0000000000 -0.99999999999999999999999999999999999999 0 -2.0000000000 -0.9999999999999999999
|
||||
insert_select_test1 0 -1.9999999999 -0.99999999999999999999999999999999999999 0 -1.9999999999 -0.9999999999999999999
|
||||
insert_select_test1 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
insert_select_test1 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
insert_select_test1 0 -1.0000000009 -0.00000000000000000000000000000000000009 0 -1.0000000009 -0.0000000000000000009
|
||||
insert_select_test1 0 -1.0000000001 -0.00000000000000000000000000000000000001 0 -1.0000000001 -0.0000000000000000001
|
||||
insert_select_test1 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test1 NULL NULL NULL NULL NULL NULL
|
||||
insert_select_test1 12345678901234567890123456789000000001 1234567890123456789012345678.0010000008 0.00001000000000000000000000000000000009 1234567890120000001 123456789.0020000009 0.0000000070000000009
|
||||
insert_select_test1 -12345678901234567890123456789000000001 -1234567890123456789012345678.0010000008 -0.00001000000000000000000000000000000009 -1234567890120000001 -123456789.0020000009 -0.0000000070000000009
|
||||
SELECT * FROM cs3 INTO OUTFILE '/tmp/wide_decimal_ldi.txt' FIELDS TERMINATED BY ',';
|
||||
Warnings:
|
||||
Warning 1287 '<select expression> INTO <destination>;' is deprecated and will be removed in a future release. Please use 'SELECT <select list> INTO <destination> FROM...' instead
|
||||
DELETE FROM cs3;
|
||||
LOAD DATA LOCAL INFILE '/tmp/wide_decimal_ldi.txt' INTO TABLE cs3 FIELDS TERMINATED BY ',';
|
||||
SELECT "ldi_test1", d1, d2, d3, d4, d5, d6 FROM cs3;
|
||||
ldi_test1 d1 d2 d3 d4 d5 d6
|
||||
ldi_test1 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
ldi_test1 -125 -1.2500000000 -0.12500000000000000000000000000000000000 -125 -1.2500000000 -0.1250000000000000000
|
||||
ldi_test1 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
ldi_test1 -1 -125.0000000000 -0.99999999999999999999999999999999999999 -1 -125.0000000000 -0.9999999999999999999
|
||||
ldi_test1 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
ldi_test1 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
ldi_test1 -99999999999999999999999999999999999998 -9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998 -9999999999999999998 -999999999.9999999998 -0.9999999999999999998
|
||||
ldi_test1 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999 -9999999999999999999 -999999999.9999999999 -0.9999999999999999999
|
||||
ldi_test1 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
ldi_test1 -99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.12345678901234567890123456789012345679 -9999999999999999999 -999999999.9999999999 -0.1234567890123456789
|
||||
ldi_test1 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
ldi_test1 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
ldi_test1 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
ldi_test1 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
ldi_test1 0 -1.1234567892 -0.12345678901234567890123456789012345679 0 -1.1234567892 -0.1234567890123456790
|
||||
ldi_test1 0 -1.1234567891 -0.12345678901234567890123456789012345678 0 -1.1234567891 -0.1234567890123456789
|
||||
ldi_test1 0 -2.0000000000 -0.99999999999999999999999999999999999999 0 -2.0000000000 -0.9999999999999999999
|
||||
ldi_test1 0 -1.9999999999 -0.99999999999999999999999999999999999999 0 -1.9999999999 -0.9999999999999999999
|
||||
ldi_test1 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
ldi_test1 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
ldi_test1 0 -1.0000000009 -0.00000000000000000000000000000000000009 0 -1.0000000009 -0.0000000000000000009
|
||||
ldi_test1 0 -1.0000000001 -0.00000000000000000000000000000000000001 0 -1.0000000001 -0.0000000000000000001
|
||||
ldi_test1 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test1 NULL NULL NULL NULL NULL NULL
|
||||
ldi_test1 12345678901234567890123456789000000001 1234567890123456789012345678.0010000008 0.00001000000000000000000000000000000009 1234567890120000001 123456789.0020000009 0.0000000070000000009
|
||||
ldi_test1 -12345678901234567890123456789000000001 -1234567890123456789012345678.0010000008 -0.00001000000000000000000000000000000009 -1234567890120000001 -123456789.0020000009 -0.0000000070000000009
|
||||
INSERT INTO cs2 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125);
|
||||
INSERT INTO cs2 VALUES (-125, -1.25, -0.125, -125, -1.25, -0.125);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (1.25, 125, 125, 1.25, 125, 125);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (-1.25, -125, -125, -1.25, -125, -125);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs2 values (-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 values (-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs2 VALUES (0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Warning 1264 Out of range value for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Warning 1264 Out of range value for column 'd6' at row 1
|
||||
INSERT INTO cs2 VALUES (0, 0, 0, 0, 0, 0);
|
||||
INSERT INTO cs2 VALUES (NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO cs2 VALUES ();
|
||||
SELECT "test3", d1, d2, d3, d4, d5, d6 FROM cs2;
|
||||
test3 d1 d2 d3 d4 d5 d6
|
||||
test3 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
test3 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
test3 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
test3 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
test3 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
test3 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test3 NULL NULL NULL NULL NULL NULL
|
||||
test3 NULL NULL NULL NULL NULL NULL
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED,
|
||||
d4 DECIMAL(19) UNSIGNED, d5 DECIMAL(19,10) UNSIGNED, d6 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs2 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125),
|
||||
(-125, -1.25, -0.125, -125, -1.25, -0.125),
|
||||
(1.25, 125, 125, 1.25, 125, 125),
|
||||
(-1.25, -125, -125, -1.25, -125, -125);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 2
|
||||
Warning 1264 Out of range value for column 'd2' at row 2
|
||||
Warning 1264 Out of range value for column 'd3' at row 2
|
||||
Warning 1264 Out of range value for column 'd4' at row 2
|
||||
Warning 1264 Out of range value for column 'd5' at row 2
|
||||
Warning 1264 Out of range value for column 'd6' at row 2
|
||||
Note 1265 Data truncated for column 'd1' at row 3
|
||||
Warning 1264 Out of range value for column 'd3' at row 3
|
||||
Note 1265 Data truncated for column 'd4' at row 3
|
||||
Warning 1264 Out of range value for column 'd6' at row 3
|
||||
Warning 1264 Out of range value for column 'd1' at row 4
|
||||
Warning 1264 Out of range value for column 'd2' at row 4
|
||||
Warning 1264 Out of range value for column 'd3' at row 4
|
||||
Warning 1264 Out of range value for column 'd4' at row 4
|
||||
Warning 1264 Out of range value for column 'd5' at row 4
|
||||
Warning 1264 Out of range value for column 'd6' at row 4
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999),
|
||||
(-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998),
|
||||
(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 3
|
||||
Warning 1264 Out of range value for column 'd2' at row 3
|
||||
Warning 1264 Out of range value for column 'd3' at row 3
|
||||
Warning 1264 Out of range value for column 'd4' at row 3
|
||||
Warning 1264 Out of range value for column 'd5' at row 3
|
||||
Warning 1264 Out of range value for column 'd6' at row 3
|
||||
Warning 1264 Out of range value for column 'd1' at row 4
|
||||
Warning 1264 Out of range value for column 'd2' at row 4
|
||||
Warning 1264 Out of range value for column 'd3' at row 4
|
||||
Warning 1264 Out of range value for column 'd4' at row 4
|
||||
Warning 1264 Out of range value for column 'd5' at row 4
|
||||
Warning 1264 Out of range value for column 'd6' at row 4
|
||||
INSERT INTO cs2 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891),
|
||||
(-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 1
|
||||
Warning 1264 Out of range value for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Warning 1264 Out of range value for column 'd4' at row 1
|
||||
Warning 1264 Out of range value for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
Warning 1264 Out of range value for column 'd1' at row 2
|
||||
Warning 1264 Out of range value for column 'd2' at row 2
|
||||
Warning 1264 Out of range value for column 'd3' at row 2
|
||||
Warning 1264 Out of range value for column 'd4' at row 2
|
||||
Warning 1264 Out of range value for column 'd5' at row 2
|
||||
Warning 1264 Out of range value for column 'd6' at row 2
|
||||
INSERT INTO cs2 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899),
|
||||
(0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894),
|
||||
(0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999),
|
||||
(0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994),
|
||||
(0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899),
|
||||
(0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894),
|
||||
(0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999),
|
||||
(0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 1
|
||||
Note 1265 Data truncated for column 'd3' at row 1
|
||||
Note 1265 Data truncated for column 'd5' at row 1
|
||||
Note 1265 Data truncated for column 'd6' at row 1
|
||||
Note 1265 Data truncated for column 'd2' at row 2
|
||||
Note 1265 Data truncated for column 'd3' at row 2
|
||||
Note 1265 Data truncated for column 'd5' at row 2
|
||||
Note 1265 Data truncated for column 'd6' at row 2
|
||||
Note 1265 Data truncated for column 'd2' at row 3
|
||||
Warning 1264 Out of range value for column 'd3' at row 3
|
||||
Note 1265 Data truncated for column 'd5' at row 3
|
||||
Warning 1264 Out of range value for column 'd6' at row 3
|
||||
Note 1265 Data truncated for column 'd2' at row 4
|
||||
Note 1265 Data truncated for column 'd3' at row 4
|
||||
Note 1265 Data truncated for column 'd5' at row 4
|
||||
Note 1265 Data truncated for column 'd6' at row 4
|
||||
Warning 1264 Out of range value for column 'd2' at row 5
|
||||
Warning 1264 Out of range value for column 'd3' at row 5
|
||||
Warning 1264 Out of range value for column 'd5' at row 5
|
||||
Warning 1264 Out of range value for column 'd6' at row 5
|
||||
Warning 1264 Out of range value for column 'd2' at row 6
|
||||
Warning 1264 Out of range value for column 'd3' at row 6
|
||||
Warning 1264 Out of range value for column 'd5' at row 6
|
||||
Warning 1264 Out of range value for column 'd6' at row 6
|
||||
Warning 1264 Out of range value for column 'd2' at row 7
|
||||
Warning 1264 Out of range value for column 'd3' at row 7
|
||||
Warning 1264 Out of range value for column 'd5' at row 7
|
||||
Warning 1264 Out of range value for column 'd6' at row 7
|
||||
Warning 1264 Out of range value for column 'd2' at row 8
|
||||
Warning 1264 Out of range value for column 'd3' at row 8
|
||||
Warning 1264 Out of range value for column 'd5' at row 8
|
||||
Warning 1264 Out of range value for column 'd6' at row 8
|
||||
INSERT INTO cs2 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009),
|
||||
(0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009),
|
||||
(0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009),
|
||||
(0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
Warnings:
|
||||
Note 1265 Data truncated for column 'd2' at row 2
|
||||
Note 1265 Data truncated for column 'd3' at row 2
|
||||
Note 1265 Data truncated for column 'd5' at row 2
|
||||
Note 1265 Data truncated for column 'd6' at row 2
|
||||
Warning 1264 Out of range value for column 'd2' at row 3
|
||||
Warning 1264 Out of range value for column 'd3' at row 3
|
||||
Warning 1264 Out of range value for column 'd5' at row 3
|
||||
Warning 1264 Out of range value for column 'd6' at row 3
|
||||
Warning 1264 Out of range value for column 'd2' at row 4
|
||||
Warning 1264 Out of range value for column 'd3' at row 4
|
||||
Warning 1264 Out of range value for column 'd5' at row 4
|
||||
Warning 1264 Out of range value for column 'd6' at row 4
|
||||
INSERT INTO cs2 VALUES (0, 0, 0, 0, 0, 0),
|
||||
(NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO cs2 VALUES (12345678901234567890123456789000000001, 1234567890123456789012345678.0010000008, 0.00001000000000000000000000000000000009, 1234567890120000001, 123456789.0020000009, 0.0000000070000000009),
|
||||
(-12345678901234567890123456789000000001, -1234567890123456789012345678.0010000008, -0.00001000000000000000000000000000000009, -1234567890120000001, -123456789.0020000009, -0.0000000070000000009);
|
||||
Warnings:
|
||||
Warning 1264 Out of range value for column 'd1' at row 2
|
||||
Warning 1264 Out of range value for column 'd2' at row 2
|
||||
Warning 1264 Out of range value for column 'd3' at row 2
|
||||
Warning 1264 Out of range value for column 'd4' at row 2
|
||||
Warning 1264 Out of range value for column 'd5' at row 2
|
||||
Warning 1264 Out of range value for column 'd6' at row 2
|
||||
SELECT "test4", d1, d2, d3, d4, d5, d6 FROM cs2;
|
||||
test4 d1 d2 d3 d4 d5 d6
|
||||
test4 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
test4 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
test4 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
test4 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
test4 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
test4 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
test4 NULL NULL NULL NULL NULL NULL
|
||||
test4 12345678901234567890123456789000000001 1234567890123456789012345678.0010000008 0.00001000000000000000000000000000000009 1234567890120000001 123456789.0020000009 0.0000000070000000009
|
||||
test4 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
INSERT INTO cs4 SELECT * FROM cs2;
|
||||
SELECT "insert_select_test2", d1, d2, d3, d4, d5, d6 FROM cs4;
|
||||
insert_select_test2 d1 d2 d3 d4 d5 d6
|
||||
insert_select_test2 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
insert_select_test2 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
insert_select_test2 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
insert_select_test2 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
insert_select_test2 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
insert_select_test2 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
insert_select_test2 NULL NULL NULL NULL NULL NULL
|
||||
insert_select_test2 12345678901234567890123456789000000001 1234567890123456789012345678.0010000008 0.00001000000000000000000000000000000009 1234567890120000001 123456789.0020000009 0.0000000070000000009
|
||||
insert_select_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
SELECT * FROM cs4 INTO OUTFILE '/tmp/wide_decimal_ldi.txt' FIELDS TERMINATED BY ',';
|
||||
Warnings:
|
||||
Warning 1287 '<select expression> INTO <destination>;' is deprecated and will be removed in a future release. Please use 'SELECT <select list> INTO <destination> FROM...' instead
|
||||
DELETE FROM cs4;
|
||||
LOAD DATA LOCAL INFILE '/tmp/wide_decimal_ldi.txt' INTO TABLE cs4 FIELDS TERMINATED BY ',';
|
||||
SELECT "ldi_test2", d1, d2, d3, d4, d5, d6 FROM cs4;
|
||||
ldi_test2 d1 d2 d3 d4 d5 d6
|
||||
ldi_test2 125 1.2500000000 0.12500000000000000000000000000000000000 125 1.2500000000 0.1250000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 1 125.0000000000 0.99999999999999999999999999999999999999 1 125.0000000000 0.9999999999999999999
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 9999999999999999998 999999999.9999999998 0.9999999999999999998
|
||||
ldi_test2 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 9999999999999999999 999999999.9999999999 0.9999999999999999999
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.12345678901234567890123456789012345679 9999999999999999999 999999999.9999999999 0.1234567890123456789
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 1.1234567892 0.12345678901234567890123456789012345679 0 1.1234567892 0.1234567890123456790
|
||||
ldi_test2 0 1.1234567891 0.12345678901234567890123456789012345678 0 1.1234567891 0.1234567890123456789
|
||||
ldi_test2 0 2.0000000000 0.99999999999999999999999999999999999999 0 2.0000000000 0.9999999999999999999
|
||||
ldi_test2 0 1.9999999999 0.99999999999999999999999999999999999999 0 1.9999999999 0.9999999999999999999
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 1.0000000009 0.00000000000000000000000000000000000009 0 1.0000000009 0.0000000000000000009
|
||||
ldi_test2 0 1.0000000001 0.00000000000000000000000000000000000001 0 1.0000000001 0.0000000000000000001
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
ldi_test2 NULL NULL NULL NULL NULL NULL
|
||||
ldi_test2 12345678901234567890123456789000000001 1234567890123456789012345678.0010000008 0.00001000000000000000000000000000000009 1234567890120000001 123456789.0020000009 0.0000000070000000009
|
||||
ldi_test2 0 0.0000000000 0.00000000000000000000000000000000000000 0 0.0000000000 0.0000000000000000000
|
||||
SET SQL_MODE=default;
|
||||
DROP DATABASE mcol641_insert_db;
|
71
mysql-test/columnstore/basic/r/mcol641-joins.result
Normal file
71
mysql-test/columnstore/basic/r/mcol641-joins.result
Normal file
@ -0,0 +1,71 @@
|
||||
DROP DATABASE IF EXISTS mcol641_joins_db;
|
||||
CREATE DATABASE mcol641_joins_db;
|
||||
USE mcol641_joins_db;
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (de1 DECIMAL(38,38), de2 DECIMAL(38,10)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 1234567890123456789012345678.1234567890, 0.12345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (-12345678901234567890123456789012345678, -1234567890123456789012345678.1234567890, -0.12345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (0, 1.1234567891, 0.1234567890123456789012345678912345);
|
||||
INSERT INTO cs2 values (0.99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998);
|
||||
INSERT INTO cs2 VALUES (0.12345678901234567890123456789012345678, 1234567890123456789012345678.0123456789);
|
||||
INSERT INTO cs2 VALUES (-0.12345678901234567890123456789012345678, -1234567890123456789012345678.0123456789);
|
||||
INSERT INTO cs2 VALUES (0.12345678901234567890123456789, 1.1234567891);
|
||||
SELECT cs1.d1, cs1.d2, cs2.de1 FROM cs1 INNER JOIN cs2 ON cs1.d2 = cs2.de2 ORDER BY 1;
|
||||
d1 d2 de1
|
||||
0 1.1234567891 0.12345678901234567890123456789000000000
|
||||
99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998
|
||||
SELECT cs2.de1, cs1.d1, cs1.d2 FROM cs1 INNER JOIN cs2 ON cs1.d3 = cs2.de1 ORDER BY 1;
|
||||
de1 d1 d2
|
||||
-0.12345678901234567890123456789012345678 -12345678901234567890123456789012345678 -1234567890123456789012345678.1234567890
|
||||
0.12345678901234567890123456789012345678 12345678901234567890123456789012345678 1234567890123456789012345678.1234567890
|
||||
0.99999999999999999999999999999999999998 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998
|
||||
SELECT cs2.de2, cs1.d1, cs1.d3, cs2.de1 FROM cs1 LEFT JOIN cs2 ON cs1.d2 = cs2.de2 ORDER BY 2;
|
||||
de2 d1 d3 de1
|
||||
NULL -12345678901234567890123456789012345678 -0.12345678901234567890123456789012345678 NULL
|
||||
1.1234567891 0 0.12345678901234567890123456789123450000 0.12345678901234567890123456789000000000
|
||||
NULL 12345678901234567890123456789012345678 0.12345678901234567890123456789012345678 NULL
|
||||
9999999999999999999999999999.9999999998 99999999999999999999999999999999999998 0.99999999999999999999999999999999999998 0.99999999999999999999999999999999999998
|
||||
SELECT cs1.d3, cs1.d1, cs1.d2, cs2.de2 FROM cs1 LEFT JOIN cs2 ON cs1.d3 = cs2.de1 ORDER BY 1;
|
||||
d3 d1 d2 de2
|
||||
-0.12345678901234567890123456789012345678 -12345678901234567890123456789012345678 -1234567890123456789012345678.1234567890 -1234567890123456789012345678.0123456789
|
||||
0.12345678901234567890123456789012345678 12345678901234567890123456789012345678 1234567890123456789012345678.1234567890 1234567890123456789012345678.0123456789
|
||||
0.12345678901234567890123456789123450000 0 1.1234567891 NULL
|
||||
0.99999999999999999999999999999999999998 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 9999999999999999999999999999.9999999998
|
||||
SELECT cs1.d1, cs1.d3, cs2.de1, cs2.de2 FROM cs1 RIGHT JOIN cs2 ON cs1.d2 = cs2.de2 ORDER BY 3;
|
||||
d1 d3 de1 de2
|
||||
NULL NULL -0.12345678901234567890123456789012345678 -1234567890123456789012345678.0123456789
|
||||
0 0.12345678901234567890123456789123450000 0.12345678901234567890123456789000000000 1.1234567891
|
||||
NULL NULL 0.12345678901234567890123456789012345678 1234567890123456789012345678.0123456789
|
||||
99999999999999999999999999999999999998 0.99999999999999999999999999999999999998 0.99999999999999999999999999999999999998 9999999999999999999999999999.9999999998
|
||||
SELECT cs2.de1, cs2.de2, cs1.d1, cs1.d2 FROM cs1 RIGHT JOIN cs2 ON cs1.d3 = cs2.de1 ORDER BY 1;
|
||||
de1 de2 d1 d2
|
||||
-0.12345678901234567890123456789012345678 -1234567890123456789012345678.0123456789 -12345678901234567890123456789012345678 -1234567890123456789012345678.1234567890
|
||||
0.12345678901234567890123456789000000000 1.1234567891 NULL NULL
|
||||
0.12345678901234567890123456789012345678 1234567890123456789012345678.0123456789 12345678901234567890123456789012345678 1234567890123456789012345678.1234567890
|
||||
0.99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 99999999999999999999999999999999999998 9999999999999999999999999999.9999999998
|
||||
SELECT * FROM cs1 WHERE cs1.d2 IN (SELECT cs2.de2 FROM cs2 WHERE cs2.de2 = cs1.d2) ORDER BY 1;
|
||||
d1 d2 d3
|
||||
0 1.1234567891 0.12345678901234567890123456789123450000
|
||||
99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998
|
||||
SELECT * FROM cs2 WHERE cs2.de2 IN (SELECT cs1.d2 FROM cs1 WHERE cs1.d2 = cs2.de2) ORDER BY 1;
|
||||
de1 de2
|
||||
0.12345678901234567890123456789000000000 1.1234567891
|
||||
0.99999999999999999999999999999999999998 9999999999999999999999999999.9999999998
|
||||
SELECT * FROM cs1 WHERE cs1.d3 IN (SELECT cs2.de1 FROM cs2 WHERE cs2.de1 = cs1.d3) ORDER BY 1;
|
||||
d1 d2 d3
|
||||
-12345678901234567890123456789012345678 -1234567890123456789012345678.1234567890 -0.12345678901234567890123456789012345678
|
||||
12345678901234567890123456789012345678 1234567890123456789012345678.1234567890 0.12345678901234567890123456789012345678
|
||||
99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998
|
||||
SELECT * FROM cs2 WHERE cs2.de1 IN (SELECT cs1.d3 FROM cs1 WHERE cs1.d3 = cs2.de1) ORDER BY 1;
|
||||
de1 de2
|
||||
-0.12345678901234567890123456789012345678 -1234567890123456789012345678.0123456789
|
||||
0.12345678901234567890123456789012345678 1234567890123456789012345678.0123456789
|
||||
0.99999999999999999999999999999999999998 9999999999999999999999999999.9999999998
|
||||
SELECT count(*) FROM cs1 where exists (SELECT cs2.de2 FROM cs2 WHERE cs1.d2=cs2.de2);
|
||||
count(*)
|
||||
2
|
||||
SELECT count(*) FROM cs2 where not exists (SELECT cs1.d2 FROM cs1 WHERE cs1.d2=cs2.de2);
|
||||
count(*)
|
||||
2
|
||||
DROP DATABASE mcol641_joins_db;
|
1298
mysql-test/columnstore/basic/r/mcol641-skewed-joins.result
Normal file
1298
mysql-test/columnstore/basic/r/mcol641-skewed-joins.result
Normal file
File diff suppressed because it is too large
Load Diff
390
mysql-test/columnstore/basic/r/mcol641-sorting.result
Normal file
390
mysql-test/columnstore/basic/r/mcol641-sorting.result
Normal file
@ -0,0 +1,390 @@
|
||||
DROP DATABASE IF EXISTS mcol641_sorting_db;
|
||||
CREATE DATABASE mcol641_sorting_db;
|
||||
USE mcol641_sorting_db;
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(1234,5678,-0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,-5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(-123456789123456789,-5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
INSERT INTO cs2 VALUES
|
||||
(1234,5678,0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(123456789123456789,5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
SELECT 't1_q1',d1,d5 FROM cs1 ORDER BY d1,d5;
|
||||
t1_q1 d1 d5
|
||||
t1_q1 NULL 1
|
||||
t1_q1 NULL 2
|
||||
t1_q1 -123456789123456789 2
|
||||
t1_q1 0 1
|
||||
t1_q1 0 2
|
||||
t1_q1 1234 1
|
||||
t1_q1 1234 1
|
||||
t1_q1 1234 1
|
||||
t1_q1 1234 1
|
||||
t1_q1 1234 1
|
||||
t1_q1 1234 2
|
||||
t1_q1 12345678901234567890123 1
|
||||
t1_q1 12345678901234567890901 2
|
||||
SELECT 't1_q2',d2,d5 FROM cs1 ORDER BY d2,d5;
|
||||
t1_q2 d2 d5
|
||||
t1_q2 NULL 1
|
||||
t1_q2 NULL 2
|
||||
t1_q2 -5678.0000000000 1
|
||||
t1_q2 -5678.0000000000 2
|
||||
t1_q2 0.0000000000 1
|
||||
t1_q2 0.0000000000 2
|
||||
t1_q2 5678.0000000000 1
|
||||
t1_q2 5678.0000000000 1
|
||||
t1_q2 5678.0000000000 1
|
||||
t1_q2 5678.0000000000 1
|
||||
t1_q2 5678.0000000000 2
|
||||
t1_q2 1234567890123456789012.9012345678 1
|
||||
t1_q2 1234567890123478901234.9012345678 2
|
||||
SELECT 't1_q3',d3,d5 FROM cs1 ORDER BY d3,d5;
|
||||
t1_q3 d3 d5
|
||||
t1_q3 NULL 1
|
||||
t1_q3 NULL 2
|
||||
t1_q3 -0.12345678901234567890123456789018000000 1
|
||||
t1_q3 -0.12345678901234567890123456789018000000 1
|
||||
t1_q3 -0.12345678901234567890123456789018000000 1
|
||||
t1_q3 -0.12345678901234567890123456789018000000 1
|
||||
t1_q3 0.00000000000000000000000000000000000000 1
|
||||
t1_q3 0.00000000000000000000000000000000000000 2
|
||||
t1_q3 0.12345678901234567345678901234567800000 2
|
||||
t1_q3 0.12345678901234567834567890123456780000 2
|
||||
t1_q3 0.12345678901234567890123450000000000000 1
|
||||
t1_q3 0.12345678901234567890123456789000000000 1
|
||||
t1_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't2_q1',d1,d5 FROM cs1 ORDER BY d1,d5 LIMIT 1 OFFSET 2;
|
||||
t2_q1 d1 d5
|
||||
t2_q1 -123456789123456789 2
|
||||
SELECT 't2_q2',d2,d5 FROM cs1 ORDER BY d2,d5 LIMIT 1 OFFSET 2;
|
||||
t2_q2 d2 d5
|
||||
t2_q2 -5678.0000000000 1
|
||||
SELECT 't2_q3',d3,d5 FROM cs1 ORDER BY d3,d5 LIMIT 1 OFFSET 2;
|
||||
t2_q3 d3 d5
|
||||
t2_q3 -0.12345678901234567890123456789018000000 1
|
||||
SELECT DISTINCT 't3_q1',d1,d5 FROM cs1 ORDER BY d1,d5;
|
||||
t3_q1 d1 d5
|
||||
t3_q1 NULL 1
|
||||
t3_q1 NULL 2
|
||||
t3_q1 -123456789123456789 2
|
||||
t3_q1 0 1
|
||||
t3_q1 0 2
|
||||
t3_q1 1234 1
|
||||
t3_q1 1234 2
|
||||
t3_q1 12345678901234567890123 1
|
||||
t3_q1 12345678901234567890901 2
|
||||
SELECT DISTINCT 't3_q2',d2,d5 FROM cs1 ORDER BY d2,d5;
|
||||
t3_q2 d2 d5
|
||||
t3_q2 NULL 1
|
||||
t3_q2 NULL 2
|
||||
t3_q2 -5678.0000000000 1
|
||||
t3_q2 -5678.0000000000 2
|
||||
t3_q2 0.0000000000 1
|
||||
t3_q2 0.0000000000 2
|
||||
t3_q2 5678.0000000000 1
|
||||
t3_q2 5678.0000000000 2
|
||||
t3_q2 1234567890123456789012.9012345678 1
|
||||
t3_q2 1234567890123478901234.9012345678 2
|
||||
SELECT DISTINCT 't3_q3',d3,d5 FROM cs1 ORDER BY d3,d5;
|
||||
t3_q3 d3 d5
|
||||
t3_q3 NULL 1
|
||||
t3_q3 NULL 2
|
||||
t3_q3 -0.12345678901234567890123456789018000000 1
|
||||
t3_q3 0.00000000000000000000000000000000000000 1
|
||||
t3_q3 0.00000000000000000000000000000000000000 2
|
||||
t3_q3 0.12345678901234567345678901234567800000 2
|
||||
t3_q3 0.12345678901234567834567890123456780000 2
|
||||
t3_q3 0.12345678901234567890123450000000000000 1
|
||||
t3_q3 0.12345678901234567890123456789000000000 1
|
||||
t3_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't4_q1',d1,d5 FROM cs1 ORDER BY d1,d5 ASC;
|
||||
t4_q1 d1 d5
|
||||
t4_q1 NULL 1
|
||||
t4_q1 NULL 2
|
||||
t4_q1 -123456789123456789 2
|
||||
t4_q1 0 1
|
||||
t4_q1 0 2
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 2
|
||||
t4_q1 12345678901234567890123 1
|
||||
t4_q1 12345678901234567890901 2
|
||||
SELECT 't4_q2',d2,d5 FROM cs1 ORDER BY d2,d5 ASC;
|
||||
t4_q2 d2 d5
|
||||
t4_q2 NULL 1
|
||||
t4_q2 NULL 2
|
||||
t4_q2 -5678.0000000000 1
|
||||
t4_q2 -5678.0000000000 2
|
||||
t4_q2 0.0000000000 1
|
||||
t4_q2 0.0000000000 2
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 2
|
||||
t4_q2 1234567890123456789012.9012345678 1
|
||||
t4_q2 1234567890123478901234.9012345678 2
|
||||
SELECT 't4_q3',d3,d5 FROM cs1 ORDER BY d3,d5 ASC;
|
||||
t4_q3 d3 d5
|
||||
t4_q3 NULL 1
|
||||
t4_q3 NULL 2
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 0.00000000000000000000000000000000000000 1
|
||||
t4_q3 0.00000000000000000000000000000000000000 2
|
||||
t4_q3 0.12345678901234567345678901234567800000 2
|
||||
t4_q3 0.12345678901234567834567890123456780000 2
|
||||
t4_q3 0.12345678901234567890123450000000000000 1
|
||||
t4_q3 0.12345678901234567890123456789000000000 1
|
||||
t4_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't4_q1',d1,d5 FROM cs1 ORDER BY d1,d5 DESC;
|
||||
t4_q1 d1 d5
|
||||
t4_q1 NULL 2
|
||||
t4_q1 NULL 1
|
||||
t4_q1 -123456789123456789 2
|
||||
t4_q1 0 2
|
||||
t4_q1 0 1
|
||||
t4_q1 1234 2
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 1234 1
|
||||
t4_q1 12345678901234567890123 1
|
||||
t4_q1 12345678901234567890901 2
|
||||
SELECT 't4_q2',d2,d5 FROM cs1 ORDER BY d2,d5 DESC;
|
||||
t4_q2 d2 d5
|
||||
t4_q2 NULL 2
|
||||
t4_q2 NULL 1
|
||||
t4_q2 -5678.0000000000 2
|
||||
t4_q2 -5678.0000000000 1
|
||||
t4_q2 0.0000000000 2
|
||||
t4_q2 0.0000000000 1
|
||||
t4_q2 5678.0000000000 2
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 5678.0000000000 1
|
||||
t4_q2 1234567890123456789012.9012345678 1
|
||||
t4_q2 1234567890123478901234.9012345678 2
|
||||
SELECT 't4_q3',d3,d5 FROM cs1 ORDER BY d3,d5 DESC;
|
||||
t4_q3 d3 d5
|
||||
t4_q3 NULL 2
|
||||
t4_q3 NULL 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 -0.12345678901234567890123456789018000000 1
|
||||
t4_q3 0.00000000000000000000000000000000000000 2
|
||||
t4_q3 0.00000000000000000000000000000000000000 1
|
||||
t4_q3 0.12345678901234567345678901234567800000 2
|
||||
t4_q3 0.12345678901234567834567890123456780000 2
|
||||
t4_q3 0.12345678901234567890123450000000000000 1
|
||||
t4_q3 0.12345678901234567890123456789000000000 1
|
||||
t4_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't5_q1',d1,d5 FROM cs2 ORDER BY d1,d5;
|
||||
t5_q1 d1 d5
|
||||
t5_q1 NULL 1
|
||||
t5_q1 NULL 2
|
||||
t5_q1 0 1
|
||||
t5_q1 0 2
|
||||
t5_q1 1234 1
|
||||
t5_q1 1234 1
|
||||
t5_q1 1234 1
|
||||
t5_q1 1234 1
|
||||
t5_q1 1234 1
|
||||
t5_q1 1234 2
|
||||
t5_q1 123456789123456789 2
|
||||
t5_q1 12345678901234567890123 1
|
||||
t5_q1 12345678901234567890901 2
|
||||
SELECT 't5_q2',d2,d5 FROM cs2 ORDER BY d2,d5;
|
||||
t5_q2 d2 d5
|
||||
t5_q2 NULL 1
|
||||
t5_q2 NULL 2
|
||||
t5_q2 0.0000000000 1
|
||||
t5_q2 0.0000000000 2
|
||||
t5_q2 5678.0000000000 1
|
||||
t5_q2 5678.0000000000 1
|
||||
t5_q2 5678.0000000000 1
|
||||
t5_q2 5678.0000000000 1
|
||||
t5_q2 5678.0000000000 1
|
||||
t5_q2 5678.0000000000 2
|
||||
t5_q2 5678.0000000000 2
|
||||
t5_q2 1234567890123456789012.9012345678 1
|
||||
t5_q2 1234567890123478901234.9012345678 2
|
||||
SELECT 't5_q3',d3,d5 FROM cs2 ORDER BY d3,d5;
|
||||
t5_q3 d3 d5
|
||||
t5_q3 NULL 1
|
||||
t5_q3 NULL 2
|
||||
t5_q3 0.00000000000000000000000000000000000000 1
|
||||
t5_q3 0.00000000000000000000000000000000000000 2
|
||||
t5_q3 0.12345678901234567345678901234567800000 2
|
||||
t5_q3 0.12345678901234567834567890123456780000 2
|
||||
t5_q3 0.12345678901234567890123450000000000000 1
|
||||
t5_q3 0.12345678901234567890123456789000000000 1
|
||||
t5_q3 0.12345678901234567890123456789018000000 1
|
||||
t5_q3 0.12345678901234567890123456789018000000 1
|
||||
t5_q3 0.12345678901234567890123456789018000000 1
|
||||
t5_q3 0.12345678901234567890123456789018000000 1
|
||||
t5_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't6_q1',d1,d5 FROM cs2 ORDER BY d1,d5 LIMIT 1 OFFSET 2;
|
||||
t6_q1 d1 d5
|
||||
t6_q1 0 1
|
||||
SELECT 't6_q2',d2,d5 FROM cs2 ORDER BY d2,d5 LIMIT 1 OFFSET 2;
|
||||
t6_q2 d2 d5
|
||||
t6_q2 0.0000000000 1
|
||||
SELECT 't6_q3',d3,d5 FROM cs2 ORDER BY d3,d5 LIMIT 1 OFFSET 2;
|
||||
t6_q3 d3 d5
|
||||
t6_q3 0.00000000000000000000000000000000000000 1
|
||||
SELECT DISTINCT 't7_q1',d1,d5 FROM cs2 ORDER BY d1,d5;
|
||||
t7_q1 d1 d5
|
||||
t7_q1 NULL 1
|
||||
t7_q1 NULL 2
|
||||
t7_q1 0 1
|
||||
t7_q1 0 2
|
||||
t7_q1 1234 1
|
||||
t7_q1 1234 2
|
||||
t7_q1 123456789123456789 2
|
||||
t7_q1 12345678901234567890123 1
|
||||
t7_q1 12345678901234567890901 2
|
||||
SELECT DISTINCT 't7_q2',d2,d5 FROM cs2 ORDER BY d2,d5;
|
||||
t7_q2 d2 d5
|
||||
t7_q2 NULL 1
|
||||
t7_q2 NULL 2
|
||||
t7_q2 0.0000000000 1
|
||||
t7_q2 0.0000000000 2
|
||||
t7_q2 5678.0000000000 1
|
||||
t7_q2 5678.0000000000 2
|
||||
t7_q2 1234567890123456789012.9012345678 1
|
||||
t7_q2 1234567890123478901234.9012345678 2
|
||||
SELECT DISTINCT 't7_q3',d3,d5 FROM cs2 ORDER BY d3,d5;
|
||||
t7_q3 d3 d5
|
||||
t7_q3 NULL 1
|
||||
t7_q3 NULL 2
|
||||
t7_q3 0.00000000000000000000000000000000000000 1
|
||||
t7_q3 0.00000000000000000000000000000000000000 2
|
||||
t7_q3 0.12345678901234567345678901234567800000 2
|
||||
t7_q3 0.12345678901234567834567890123456780000 2
|
||||
t7_q3 0.12345678901234567890123450000000000000 1
|
||||
t7_q3 0.12345678901234567890123456789000000000 1
|
||||
t7_q3 0.12345678901234567890123456789018000000 1
|
||||
t7_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't8_q1',d1,d5 FROM cs2 ORDER BY d1,d5 ASC;
|
||||
t8_q1 d1 d5
|
||||
t8_q1 NULL 1
|
||||
t8_q1 NULL 2
|
||||
t8_q1 0 1
|
||||
t8_q1 0 2
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 2
|
||||
t8_q1 123456789123456789 2
|
||||
t8_q1 12345678901234567890123 1
|
||||
t8_q1 12345678901234567890901 2
|
||||
SELECT 't8_q2',d2,d5 FROM cs2 ORDER BY d2,d5 ASC;
|
||||
t8_q2 d2 d5
|
||||
t8_q2 NULL 1
|
||||
t8_q2 NULL 2
|
||||
t8_q2 0.0000000000 1
|
||||
t8_q2 0.0000000000 2
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 2
|
||||
t8_q2 5678.0000000000 2
|
||||
t8_q2 1234567890123456789012.9012345678 1
|
||||
t8_q2 1234567890123478901234.9012345678 2
|
||||
SELECT 't8_q3',d3,d5 FROM cs2 ORDER BY d3,d5 ASC;
|
||||
t8_q3 d3 d5
|
||||
t8_q3 NULL 1
|
||||
t8_q3 NULL 2
|
||||
t8_q3 0.00000000000000000000000000000000000000 1
|
||||
t8_q3 0.00000000000000000000000000000000000000 2
|
||||
t8_q3 0.12345678901234567345678901234567800000 2
|
||||
t8_q3 0.12345678901234567834567890123456780000 2
|
||||
t8_q3 0.12345678901234567890123450000000000000 1
|
||||
t8_q3 0.12345678901234567890123456789000000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789080000000 2
|
||||
SELECT 't8_q1',d1,d5 FROM cs2 ORDER BY d1,d5 DESC;
|
||||
t8_q1 d1 d5
|
||||
t8_q1 NULL 2
|
||||
t8_q1 NULL 1
|
||||
t8_q1 0 2
|
||||
t8_q1 0 1
|
||||
t8_q1 1234 2
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 1234 1
|
||||
t8_q1 123456789123456789 2
|
||||
t8_q1 12345678901234567890123 1
|
||||
t8_q1 12345678901234567890901 2
|
||||
SELECT 't8_q2',d2,d5 FROM cs2 ORDER BY d2,d5 DESC;
|
||||
t8_q2 d2 d5
|
||||
t8_q2 NULL 2
|
||||
t8_q2 NULL 1
|
||||
t8_q2 0.0000000000 2
|
||||
t8_q2 0.0000000000 1
|
||||
t8_q2 5678.0000000000 2
|
||||
t8_q2 5678.0000000000 2
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 5678.0000000000 1
|
||||
t8_q2 1234567890123456789012.9012345678 1
|
||||
t8_q2 1234567890123478901234.9012345678 2
|
||||
SELECT 't8_q3',d3,d5 FROM cs2 ORDER BY d3,d5 DESC;
|
||||
t8_q3 d3 d5
|
||||
t8_q3 NULL 2
|
||||
t8_q3 NULL 1
|
||||
t8_q3 0.00000000000000000000000000000000000000 2
|
||||
t8_q3 0.00000000000000000000000000000000000000 1
|
||||
t8_q3 0.12345678901234567345678901234567800000 2
|
||||
t8_q3 0.12345678901234567834567890123456780000 2
|
||||
t8_q3 0.12345678901234567890123450000000000000 1
|
||||
t8_q3 0.12345678901234567890123456789000000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789018000000 1
|
||||
t8_q3 0.12345678901234567890123456789080000000 2
|
||||
DROP DATABASE mcol641_sorting_db;
|
73
mysql-test/columnstore/basic/r/mcol641-union.result
Normal file
73
mysql-test/columnstore/basic/r/mcol641-union.result
Normal file
@ -0,0 +1,73 @@
|
||||
DROP DATABASE IF EXISTS mcol641_union_db;
|
||||
CREATE DATABASE mcol641_union_db;
|
||||
USE mcol641_union_db;
|
||||
SET SQL_MODE='ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (125, 1.25, 0.125);
|
||||
INSERT INTO cs1 VALUES (-125, -1.25, -0.125);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999);
|
||||
SELECT d1, d1, d2 FROM cs1 UNION SELECT d2, d3, d3 FROM cs1;
|
||||
d1 d1 d2
|
||||
125.0000000000 125.00000000000000000000000000000000000000 1.25000000000000000000000000000000000000
|
||||
-125.0000000000 -125.00000000000000000000000000000000000000 -1.25000000000000000000000000000000000000
|
||||
99999999999999999999999999999999999998.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
99999999999999999999999999999999999999.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
-99999999999999999999999999999999999998.0000000000 -999999999999999999999999999.99999999999999999999999999999999999999 -999999999999999999999999999.99999999999999999999999999999999999999
|
||||
-99999999999999999999999999999999999999.0000000000 -999999999999999999999999999.99999999999999999999999999999999999999 -999999999999999999999999999.99999999999999999999999999999999999999
|
||||
1.2500000000 0.12500000000000000000000000000000000000 0.12500000000000000000000000000000000000
|
||||
-1.2500000000 -0.12500000000000000000000000000000000000 -0.12500000000000000000000000000000000000
|
||||
9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 0.99999999999999999999999999999999999998
|
||||
9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
-9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998 -0.99999999999999999999999999999999999998
|
||||
-9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999 -0.99999999999999999999999999999999999999
|
||||
SELECT d2, d3, d3 FROM cs1 UNION SELECT d1, d1, d2 FROM cs1;
|
||||
d2 d3 d3
|
||||
1.2500000000 0.12500000000000000000000000000000000000 0.12500000000000000000000000000000000000
|
||||
-1.2500000000 -0.12500000000000000000000000000000000000 -0.12500000000000000000000000000000000000
|
||||
9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 0.99999999999999999999999999999999999998
|
||||
9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
-9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998 -0.99999999999999999999999999999999999998
|
||||
-9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999 -0.99999999999999999999999999999999999999
|
||||
125.0000000000 125.00000000000000000000000000000000000000 1.25000000000000000000000000000000000000
|
||||
-125.0000000000 -125.00000000000000000000000000000000000000 -1.25000000000000000000000000000000000000
|
||||
99999999999999999999999999999999999998.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
99999999999999999999999999999999999999.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
-99999999999999999999999999999999999998.0000000000 -999999999999999999999999999.99999999999999999999999999999999999999 -999999999999999999999999999.99999999999999999999999999999999999999
|
||||
-99999999999999999999999999999999999999.0000000000 -999999999999999999999999999.99999999999999999999999999999999999999 -999999999999999999999999999.99999999999999999999999999999999999999
|
||||
SELECT d1, d2, d3 FROM cs1 UNION SELECT d1, d2, d3 FROM cs1;
|
||||
d1 d2 d3
|
||||
125 1.2500000000 0.12500000000000000000000000000000000000
|
||||
-125 -1.2500000000 -0.12500000000000000000000000000000000000
|
||||
99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998
|
||||
99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999
|
||||
-99999999999999999999999999999999999998 -9999999999999999999999999999.9999999998 -0.99999999999999999999999999999999999998
|
||||
-99999999999999999999999999999999999999 -9999999999999999999999999999.9999999999 -0.99999999999999999999999999999999999999
|
||||
INSERT INTO cs2 VALUES (125, 1.25, 0.125);
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999);
|
||||
SELECT d1, d1, d2 FROM cs2 UNION SELECT d2, d3, d3 FROM cs2;
|
||||
d1 d1 d2
|
||||
125.0000000000 125.00000000000000000000000000000000000000 1.25000000000000000000000000000000000000
|
||||
99999999999999999999999999999999999998.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
99999999999999999999999999999999999999.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
1.2500000000 0.12500000000000000000000000000000000000 0.12500000000000000000000000000000000000
|
||||
9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 0.99999999999999999999999999999999999998
|
||||
9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
SELECT d2, d3, d3 FROM cs2 UNION SELECT d1, d1, d2 FROM cs2;
|
||||
d2 d3 d3
|
||||
1.2500000000 0.12500000000000000000000000000000000000 0.12500000000000000000000000000000000000
|
||||
9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998 0.99999999999999999999999999999999999998
|
||||
9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999 0.99999999999999999999999999999999999999
|
||||
125.0000000000 125.00000000000000000000000000000000000000 1.25000000000000000000000000000000000000
|
||||
99999999999999999999999999999999999998.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
99999999999999999999999999999999999999.0000000000 999999999999999999999999999.99999999999999999999999999999999999999 999999999999999999999999999.99999999999999999999999999999999999999
|
||||
SELECT d1, d2, d3 FROM cs2 UNION SELECT d1, d2, d3 FROM cs2;
|
||||
d1 d2 d3
|
||||
125 1.2500000000 0.12500000000000000000000000000000000000
|
||||
99999999999999999999999999999999999998 9999999999999999999999999999.9999999998 0.99999999999999999999999999999999999998
|
||||
99999999999999999999999999999999999999 9999999999999999999999999999.9999999999 0.99999999999999999999999999999999999999
|
||||
DROP DATABASE mcol641_union_db;
|
993
mysql-test/columnstore/basic/r/mcol641-update.result
Normal file
993
mysql-test/columnstore/basic/r/mcol641-update.result
Normal file
@ -0,0 +1,993 @@
|
||||
DROP DATABASE IF EXISTS mcol641_update_db;
|
||||
CREATE DATABASE mcol641_update_db;
|
||||
USE mcol641_update_db;
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_update_db.signedinsertproc does not exist
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_update_db.signeddeleteproc does not exist
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_update_db.unsignedinsertproc does not exist
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
Warnings:
|
||||
Note 1305 PROCEDURE mcol641_update_db.unsigneddeleteproc does not exist
|
||||
CREATE PROCEDURE signedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs1 VALUES (125, 125);
|
||||
INSERT INTO cs1 VALUES (-125, -125);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999);
|
||||
INSERT INTO cs1 VALUES (0, 0);
|
||||
INSERT INTO cs1 VALUES (NULL, NULL);
|
||||
INSERT INTO cs2 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs2 VALUES (-1.25, -1.25);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999998, -999999999.9999999998);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999999, -999999999.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs2 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs2 VALUES (-1.1234567891, -1.1234567891);
|
||||
INSERT INTO cs2 VALUES (-1.9999999999, -1.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs2 VALUES (-1.0000000009, -1.0000000009);
|
||||
INSERT INTO cs2 VALUES (0, 0);
|
||||
INSERT INTO cs2 VALUES (NULL, NULL);
|
||||
INSERT INTO cs3 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs3 VALUES (-0.125, -0.125);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999999, -0.9999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (-0.12345678901234567890123456789012345678, -0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (-0.19999999999999999999999999999999999999, -0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (-0.00000000000000000000000000000000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (0, 0);
|
||||
INSERT INTO cs3 VALUES (NULL, NULL);
|
||||
END//
|
||||
CREATE PROCEDURE unsignedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs4 VALUES (125, 125);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs4 VALUES (0, 0);
|
||||
INSERT INTO cs4 VALUES (NULL, NULL);
|
||||
INSERT INTO cs5 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs5 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs5 VALUES (0, 0);
|
||||
INSERT INTO cs5 VALUES (NULL, NULL);
|
||||
INSERT INTO cs6 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs6 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs6 VALUES (0, 0);
|
||||
INSERT INTO cs6 VALUES (NULL, NULL);
|
||||
END//
|
||||
CREATE PROCEDURE signeddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
END//
|
||||
CREATE PROCEDURE unsigneddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
END//
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_update_db.cs1'
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_update_db.cs2'
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_update_db.cs3'
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_update_db.cs4'
|
||||
DROP TABLE IF EXISTS cs5;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_update_db.cs5'
|
||||
DROP TABLE IF EXISTS cs6;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 'mcol641_update_db.cs6'
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38,38), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(19) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs5 (d1 DECIMAL(38,10) UNSIGNED, d2 DECIMAL(19,10) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs6 (d1 DECIMAL(38,38) UNSIGNED, d2 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789;
|
||||
SELECT "signedtest1", d1, d2 FROM cs1;
|
||||
signedtest1 d1 d2
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
SELECT "signedtest1", d1, d2 FROM cs2;
|
||||
signedtest1 d1 d2
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
SELECT "signedtest1", d1, d2 FROM cs3;
|
||||
signedtest1 d1 d2
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=0 WHERE d1=-99999999999999999999999999999999999998;
|
||||
UPDATE cs1 SET d1=0, d2=123456789012345678 WHERE d2=9999999999999999999;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=0 WHERE d1=-9999999999999999999999999999.9999999998;
|
||||
UPDATE cs2 SET d1=0, d2=123456789.012345678 WHERE d2=999999999.9999999999;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0 WHERE d1=-0.99999999999999999999999999999999999998;
|
||||
UPDATE cs3 SET d1=0, d2=0.123456789012345678 WHERE d2=0.9999999999999999999;
|
||||
SELECT "signedtest2", d1, d2 FROM cs1;
|
||||
signedtest2 d1 d2
|
||||
signedtest2 125 125
|
||||
signedtest2 -125 -125
|
||||
signedtest2 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest2 0 123456789012345678
|
||||
signedtest2 12345678901234567890123456789012345678 0
|
||||
signedtest2 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest2 0 0
|
||||
signedtest2 NULL NULL
|
||||
SELECT "signedtest2", d1, d2 FROM cs2;
|
||||
signedtest2 d1 d2
|
||||
signedtest2 1.2500000000 1.2500000000
|
||||
signedtest2 -1.2500000000 -1.2500000000
|
||||
signedtest2 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest2 0.0000000000 123456789.0123456780
|
||||
signedtest2 1234567890123456789012345678.9012345678 0.0000000000
|
||||
signedtest2 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest2 1.1234567891 1.1234567891
|
||||
signedtest2 1.9999999999 1.9999999999
|
||||
signedtest2 -1.1234567891 -1.1234567891
|
||||
signedtest2 -1.9999999999 -1.9999999999
|
||||
signedtest2 1.0000000009 1.0000000009
|
||||
signedtest2 -1.0000000009 -1.0000000009
|
||||
signedtest2 0.0000000000 0.0000000000
|
||||
signedtest2 NULL NULL
|
||||
SELECT "signedtest2", d1, d2 FROM cs3;
|
||||
signedtest2 d1 d2
|
||||
signedtest2 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest2 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest2 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest2 0.00000000000000000000000000000000000000 0.1234567890123456780
|
||||
signedtest2 0.12345678901234567890123456789012345678 0.0000000000000000000
|
||||
signedtest2 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest2 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest2 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest2 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest2 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest2 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest2 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest2 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest2 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 in (-99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 in (-9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 in (-0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "signedtest3", d1, d2 FROM cs1;
|
||||
signedtest3 d1 d2
|
||||
signedtest3 125 125
|
||||
signedtest3 -125 -125
|
||||
signedtest3 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest3 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest3 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest3 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest3 0 0
|
||||
signedtest3 NULL NULL
|
||||
SELECT "signedtest3", d1, d2 FROM cs2;
|
||||
signedtest3 d1 d2
|
||||
signedtest3 1.2500000000 1.2500000000
|
||||
signedtest3 -1.2500000000 -1.2500000000
|
||||
signedtest3 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest3 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest3 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest3 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest3 1.1234567891 1.1234567891
|
||||
signedtest3 1.9999999999 1.9999999999
|
||||
signedtest3 -1.1234567891 -1.1234567891
|
||||
signedtest3 -1.9999999999 -1.9999999999
|
||||
signedtest3 1.0000000009 1.0000000009
|
||||
signedtest3 -1.0000000009 -1.0000000009
|
||||
signedtest3 0.0000000000 0.0000000000
|
||||
signedtest3 NULL NULL
|
||||
SELECT "signedtest3", d1, d2 FROM cs3;
|
||||
signedtest3 d1 d2
|
||||
signedtest3 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest3 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest3 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest3 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest3 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest3 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest3 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest3 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest3 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest3 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest3 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 < -99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 < -9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 < -0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs1;
|
||||
signedtest4a d1 d2
|
||||
signedtest4a 125 125
|
||||
signedtest4a -125 -125
|
||||
signedtest4a 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest4a 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest4a -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest4a 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest4a 0 0
|
||||
signedtest4a NULL NULL
|
||||
SELECT "signedtest4a", d1, d2 FROM cs2;
|
||||
signedtest4a d1 d2
|
||||
signedtest4a 1.2500000000 1.2500000000
|
||||
signedtest4a -1.2500000000 -1.2500000000
|
||||
signedtest4a 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest4a 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest4a -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest4a 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest4a 1.1234567891 1.1234567891
|
||||
signedtest4a 1.9999999999 1.9999999999
|
||||
signedtest4a -1.1234567891 -1.1234567891
|
||||
signedtest4a -1.9999999999 -1.9999999999
|
||||
signedtest4a 1.0000000009 1.0000000009
|
||||
signedtest4a -1.0000000009 -1.0000000009
|
||||
signedtest4a 0.0000000000 0.0000000000
|
||||
signedtest4a NULL NULL
|
||||
SELECT "signedtest4a", d1, d2 FROM cs3;
|
||||
signedtest4a d1 d2
|
||||
signedtest4a 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest4a -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest4a 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4a -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4a 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest4a -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest4a -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest4a 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest4a -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest4a 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest4a NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 <= -99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 <= -9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 <= -0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "signedtest4b", d1, d2 FROM cs1;
|
||||
signedtest4b d1 d2
|
||||
signedtest4b 125 125
|
||||
signedtest4b -125 -125
|
||||
signedtest4b 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest4b 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest4b 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest4b 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest4b 0 0
|
||||
signedtest4b NULL NULL
|
||||
SELECT "signedtest4b", d1, d2 FROM cs2;
|
||||
signedtest4b d1 d2
|
||||
signedtest4b 1.2500000000 1.2500000000
|
||||
signedtest4b -1.2500000000 -1.2500000000
|
||||
signedtest4b 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest4b 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest4b 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest4b 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest4b 1.1234567891 1.1234567891
|
||||
signedtest4b 1.9999999999 1.9999999999
|
||||
signedtest4b -1.1234567891 -1.1234567891
|
||||
signedtest4b -1.9999999999 -1.9999999999
|
||||
signedtest4b 1.0000000009 1.0000000009
|
||||
signedtest4b -1.0000000009 -1.0000000009
|
||||
signedtest4b 0.0000000000 0.0000000000
|
||||
signedtest4b NULL NULL
|
||||
SELECT "signedtest4b", d1, d2 FROM cs3;
|
||||
signedtest4b d1 d2
|
||||
signedtest4b 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest4b -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest4b 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest4b -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest4b -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest4b 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest4b -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest4b 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest4b NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 is NULL;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 is NULL;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 is NULL;
|
||||
SELECT "signedtest5", d1, d2 FROM cs1;
|
||||
signedtest5 d1 d2
|
||||
signedtest5 125 125
|
||||
signedtest5 -125 -125
|
||||
signedtest5 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest5 99999999999999999999999999999999999999 9999999999999999999
|
||||
signedtest5 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest5 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest5 0 0
|
||||
signedtest5 12345678901234567890123456789012345678 1234567890123456789
|
||||
SELECT "signedtest5", d1, d2 FROM cs2;
|
||||
signedtest5 d1 d2
|
||||
signedtest5 1.2500000000 1.2500000000
|
||||
signedtest5 -1.2500000000 -1.2500000000
|
||||
signedtest5 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest5 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
signedtest5 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest5 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest5 1.1234567891 1.1234567891
|
||||
signedtest5 1.9999999999 1.9999999999
|
||||
signedtest5 -1.1234567891 -1.1234567891
|
||||
signedtest5 -1.9999999999 -1.9999999999
|
||||
signedtest5 1.0000000009 1.0000000009
|
||||
signedtest5 -1.0000000009 -1.0000000009
|
||||
signedtest5 0.0000000000 0.0000000000
|
||||
signedtest5 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
SELECT "signedtest5", d1, d2 FROM cs3;
|
||||
signedtest5 d1 d2
|
||||
signedtest5 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest5 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest5 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest5 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
signedtest5 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest5 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest5 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest5 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest5 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest5 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest5 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest5 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest5 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest5 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 != 125;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 != 1.25;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 != 0.125;
|
||||
SELECT "signedtest6", d1, d2 FROM cs1;
|
||||
signedtest6 d1 d2
|
||||
signedtest6 125 125
|
||||
signedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest6 NULL NULL
|
||||
SELECT "signedtest6", d1, d2 FROM cs2;
|
||||
signedtest6 d1 d2
|
||||
signedtest6 1.2500000000 1.2500000000
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest6 NULL NULL
|
||||
SELECT "signedtest6", d1, d2 FROM cs3;
|
||||
signedtest6 d1 d2
|
||||
signedtest6 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest6 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs2 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs3 SET d2=d1 WHERE d1 = d2;
|
||||
SELECT "signedtest7", d1, d2 FROM cs1;
|
||||
signedtest7 d1 d2
|
||||
signedtest7 125 125
|
||||
signedtest7 -125 -125
|
||||
signedtest7 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest7 99999999999999999999999999999999999999 9999999999999999999
|
||||
signedtest7 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest7 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest7 0 0
|
||||
signedtest7 NULL NULL
|
||||
SELECT "signedtest7", d1, d2 FROM cs2;
|
||||
signedtest7 d1 d2
|
||||
signedtest7 1.2500000000 1.2500000000
|
||||
signedtest7 -1.2500000000 -1.2500000000
|
||||
signedtest7 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest7 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
signedtest7 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest7 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest7 1.1234567891 1.1234567891
|
||||
signedtest7 1.9999999999 1.9999999999
|
||||
signedtest7 -1.1234567891 -1.1234567891
|
||||
signedtest7 -1.9999999999 -1.9999999999
|
||||
signedtest7 1.0000000009 1.0000000009
|
||||
signedtest7 -1.0000000009 -1.0000000009
|
||||
signedtest7 0.0000000000 0.0000000000
|
||||
signedtest7 NULL NULL
|
||||
SELECT "signedtest7", d1, d2 FROM cs3;
|
||||
signedtest7 d1 d2
|
||||
signedtest7 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest7 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest7 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest7 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
signedtest7 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest7 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest7 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest7 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest7 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest7 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest7 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest7 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest7 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest7 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs2 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs3 SET d1=d2 WHERE d1 != d2;
|
||||
SELECT "signedtest8", d1, d2 FROM cs1;
|
||||
signedtest8 d1 d2
|
||||
signedtest8 125 125
|
||||
signedtest8 -125 -125
|
||||
signedtest8 9999999999999999998 9999999999999999998
|
||||
signedtest8 9999999999999999999 9999999999999999999
|
||||
signedtest8 -9999999999999999998 -9999999999999999998
|
||||
signedtest8 -9999999999999999999 -9999999999999999999
|
||||
signedtest8 0 0
|
||||
signedtest8 NULL NULL
|
||||
SELECT "signedtest8", d1, d2 FROM cs2;
|
||||
signedtest8 d1 d2
|
||||
signedtest8 1.2500000000 1.2500000000
|
||||
signedtest8 -1.2500000000 -1.2500000000
|
||||
signedtest8 999999999.9999999998 999999999.9999999998
|
||||
signedtest8 999999999.9999999999 999999999.9999999999
|
||||
signedtest8 -999999999.9999999998 -999999999.9999999998
|
||||
signedtest8 -999999999.9999999999 -999999999.9999999999
|
||||
signedtest8 1.1234567891 1.1234567891
|
||||
signedtest8 1.9999999999 1.9999999999
|
||||
signedtest8 -1.1234567891 -1.1234567891
|
||||
signedtest8 -1.9999999999 -1.9999999999
|
||||
signedtest8 1.0000000009 1.0000000009
|
||||
signedtest8 -1.0000000009 -1.0000000009
|
||||
signedtest8 0.0000000000 0.0000000000
|
||||
signedtest8 NULL NULL
|
||||
SELECT "signedtest8", d1, d2 FROM cs3;
|
||||
signedtest8 d1 d2
|
||||
signedtest8 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest8 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest8 0.99999999999999999980000000000000000000 0.9999999999999999998
|
||||
signedtest8 0.99999999999999999990000000000000000000 0.9999999999999999999
|
||||
signedtest8 -0.99999999999999999980000000000000000000 -0.9999999999999999998
|
||||
signedtest8 -0.99999999999999999990000000000000000000 -0.9999999999999999999
|
||||
signedtest8 0.12345678901234567890000000000000000000 0.1234567890123456789
|
||||
signedtest8 0.19999999999999999990000000000000000000 0.1999999999999999999
|
||||
signedtest8 -0.12345678901234567890000000000000000000 -0.1234567890123456789
|
||||
signedtest8 -0.19999999999999999990000000000000000000 -0.1999999999999999999
|
||||
signedtest8 0.00000000000000000090000000000000000000 0.0000000000000000009
|
||||
signedtest8 -0.00000000000000000090000000000000000000 -0.0000000000000000009
|
||||
signedtest8 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest8 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 < d2;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 < d2;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 < d2;
|
||||
SELECT "signedtest9", d1, d2 FROM cs1;
|
||||
signedtest9 d1 d2
|
||||
signedtest9 125 125
|
||||
signedtest9 -125 -125
|
||||
signedtest9 99999999999999999999999999999999999998 9999999999999999998
|
||||
signedtest9 99999999999999999999999999999999999999 9999999999999999999
|
||||
signedtest9 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest9 12345678901234567890123456789012345678 1234567890123456789
|
||||
signedtest9 0 0
|
||||
signedtest9 NULL NULL
|
||||
SELECT "signedtest9", d1, d2 FROM cs2;
|
||||
signedtest9 d1 d2
|
||||
signedtest9 1.2500000000 1.2500000000
|
||||
signedtest9 -1.2500000000 -1.2500000000
|
||||
signedtest9 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
signedtest9 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
signedtest9 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest9 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
signedtest9 1.1234567891 1.1234567891
|
||||
signedtest9 1.9999999999 1.9999999999
|
||||
signedtest9 -1.1234567891 -1.1234567891
|
||||
signedtest9 -1.9999999999 -1.9999999999
|
||||
signedtest9 1.0000000009 1.0000000009
|
||||
signedtest9 -1.0000000009 -1.0000000009
|
||||
signedtest9 0.0000000000 0.0000000000
|
||||
signedtest9 NULL NULL
|
||||
SELECT "signedtest9", d1, d2 FROM cs3;
|
||||
signedtest9 d1 d2
|
||||
signedtest9 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest9 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest9 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
signedtest9 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
signedtest9 -0.00000000000000000000000000000000000009 -0.0000000000000000009
|
||||
signedtest9 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest9 NULL NULL
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs2 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs3 SET d1=d2 WHERE d1 > d2;
|
||||
SELECT "signedtest10", d1, d2 FROM cs1;
|
||||
signedtest10 d1 d2
|
||||
signedtest10 125 125
|
||||
signedtest10 -125 -125
|
||||
signedtest10 9999999999999999998 9999999999999999998
|
||||
signedtest10 9999999999999999999 9999999999999999999
|
||||
signedtest10 -99999999999999999999999999999999999998 -9999999999999999998
|
||||
signedtest10 -99999999999999999999999999999999999999 -9999999999999999999
|
||||
signedtest10 0 0
|
||||
signedtest10 NULL NULL
|
||||
SELECT "signedtest10", d1, d2 FROM cs2;
|
||||
signedtest10 d1 d2
|
||||
signedtest10 1.2500000000 1.2500000000
|
||||
signedtest10 -1.2500000000 -1.2500000000
|
||||
signedtest10 999999999.9999999998 999999999.9999999998
|
||||
signedtest10 999999999.9999999999 999999999.9999999999
|
||||
signedtest10 -9999999999999999999999999999.9999999998 -999999999.9999999998
|
||||
signedtest10 -9999999999999999999999999999.9999999999 -999999999.9999999999
|
||||
signedtest10 1.1234567891 1.1234567891
|
||||
signedtest10 1.9999999999 1.9999999999
|
||||
signedtest10 -1.1234567891 -1.1234567891
|
||||
signedtest10 -1.9999999999 -1.9999999999
|
||||
signedtest10 1.0000000009 1.0000000009
|
||||
signedtest10 -1.0000000009 -1.0000000009
|
||||
signedtest10 0.0000000000 0.0000000000
|
||||
signedtest10 NULL NULL
|
||||
SELECT "signedtest10", d1, d2 FROM cs3;
|
||||
signedtest10 d1 d2
|
||||
signedtest10 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
signedtest10 -0.12500000000000000000000000000000000000 -0.1250000000000000000
|
||||
signedtest10 0.99999999999999999980000000000000000000 0.9999999999999999998
|
||||
signedtest10 0.99999999999999999990000000000000000000 0.9999999999999999999
|
||||
signedtest10 -0.99999999999999999999999999999999999998 -0.9999999999999999998
|
||||
signedtest10 -0.99999999999999999999999999999999999999 -0.9999999999999999999
|
||||
signedtest10 0.12345678901234567890000000000000000000 0.1234567890123456789
|
||||
signedtest10 0.19999999999999999990000000000000000000 0.1999999999999999999
|
||||
signedtest10 -0.12345678901234567890123456789012345678 -0.1234567890123456789
|
||||
signedtest10 -0.19999999999999999999999999999999999999 -0.1999999999999999999
|
||||
signedtest10 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
signedtest10 -0.00000000000000000090000000000000000000 -0.0000000000000000009
|
||||
signedtest10 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
signedtest10 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs4;
|
||||
unsignedtest1 d1 d2
|
||||
unsignedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest1 12345678901234567890123456789012345678 1234567890123456789
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs5;
|
||||
unsignedtest1 d1 d2
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest1 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs6;
|
||||
unsignedtest1 d1 d2
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest1 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=0 WHERE d1=99999999999999999999999999999999999998;
|
||||
UPDATE cs4 SET d1=0, d2=123456789012345678 WHERE d2=9999999999999999999;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=0 WHERE d1=9999999999999999999999999999.9999999998;
|
||||
UPDATE cs5 SET d1=0, d2=123456789.012345678 WHERE d2=999999999.9999999999;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0 WHERE d1=0.99999999999999999999999999999999999998;
|
||||
UPDATE cs6 SET d1=0, d2=0.123456789012345678 WHERE d2=0.9999999999999999999;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs4;
|
||||
unsignedtest2 d1 d2
|
||||
unsignedtest2 125 125
|
||||
unsignedtest2 12345678901234567890123456789012345678 0
|
||||
unsignedtest2 0 123456789012345678
|
||||
unsignedtest2 0 0
|
||||
unsignedtest2 NULL NULL
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs5;
|
||||
unsignedtest2 d1 d2
|
||||
unsignedtest2 1.2500000000 1.2500000000
|
||||
unsignedtest2 1234567890123456789012345678.9012345678 0.0000000000
|
||||
unsignedtest2 0.0000000000 123456789.0123456780
|
||||
unsignedtest2 1.1234567891 1.1234567891
|
||||
unsignedtest2 1.9999999999 1.9999999999
|
||||
unsignedtest2 1.0000000009 1.0000000009
|
||||
unsignedtest2 0.0000000000 0.0000000000
|
||||
unsignedtest2 NULL NULL
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs6;
|
||||
unsignedtest2 d1 d2
|
||||
unsignedtest2 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest2 0.12345678901234567890123456789012345678 0.0000000000000000000
|
||||
unsignedtest2 0.00000000000000000000000000000000000000 0.1234567890123456780
|
||||
unsignedtest2 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest2 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest2 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest2 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest2 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 in (99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 in (9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 in (0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs4;
|
||||
unsignedtest3 d1 d2
|
||||
unsignedtest3 125 125
|
||||
unsignedtest3 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest3 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest3 0 0
|
||||
unsignedtest3 NULL NULL
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs5;
|
||||
unsignedtest3 d1 d2
|
||||
unsignedtest3 1.2500000000 1.2500000000
|
||||
unsignedtest3 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest3 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest3 1.1234567891 1.1234567891
|
||||
unsignedtest3 1.9999999999 1.9999999999
|
||||
unsignedtest3 1.0000000009 1.0000000009
|
||||
unsignedtest3 0.0000000000 0.0000000000
|
||||
unsignedtest3 NULL NULL
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs6;
|
||||
unsignedtest3 d1 d2
|
||||
unsignedtest3 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest3 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest3 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest3 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest3 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest3 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 > 99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 > 9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 > 0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs4;
|
||||
unsignedtest4a d1 d2
|
||||
unsignedtest4a 125 125
|
||||
unsignedtest4a 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest4a 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest4a 0 0
|
||||
unsignedtest4a NULL NULL
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs5;
|
||||
unsignedtest4a d1 d2
|
||||
unsignedtest4a 1.2500000000 1.2500000000
|
||||
unsignedtest4a 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest4a 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest4a 1.1234567891 1.1234567891
|
||||
unsignedtest4a 1.9999999999 1.9999999999
|
||||
unsignedtest4a 1.0000000009 1.0000000009
|
||||
unsignedtest4a 0.0000000000 0.0000000000
|
||||
unsignedtest4a NULL NULL
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs6;
|
||||
unsignedtest4a d1 d2
|
||||
unsignedtest4a 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest4a 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4a 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4a 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest4a 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest4a 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest4a NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 >= 99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 >= 9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 >= 0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "unsignedtest4b", d1, d2 FROM cs4;
|
||||
unsignedtest4b d1 d2
|
||||
unsignedtest4b 125 125
|
||||
unsignedtest4b 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest4b 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest4b 0 0
|
||||
unsignedtest4b NULL NULL
|
||||
SELECT "unsignedtest4b", d1, d2 FROM cs5;
|
||||
unsignedtest4b d1 d2
|
||||
unsignedtest4b 1.2500000000 1.2500000000
|
||||
unsignedtest4b 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest4b 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest4b 1.1234567891 1.1234567891
|
||||
unsignedtest4b 1.9999999999 1.9999999999
|
||||
unsignedtest4b 1.0000000009 1.0000000009
|
||||
unsignedtest4b 0.0000000000 0.0000000000
|
||||
unsignedtest4b NULL NULL
|
||||
SELECT "unsignedtest4b", d1, d2 FROM cs6;
|
||||
unsignedtest4b d1 d2
|
||||
unsignedtest4b 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4b 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest4b 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest4b 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest4b 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest4b NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 is NULL;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 is NULL;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 is NULL;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs4;
|
||||
unsignedtest5 d1 d2
|
||||
unsignedtest5 125 125
|
||||
unsignedtest5 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest5 99999999999999999999999999999999999999 9999999999999999999
|
||||
unsignedtest5 0 0
|
||||
unsignedtest5 12345678901234567890123456789012345678 1234567890123456789
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs5;
|
||||
unsignedtest5 d1 d2
|
||||
unsignedtest5 1.2500000000 1.2500000000
|
||||
unsignedtest5 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest5 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
unsignedtest5 1.1234567891 1.1234567891
|
||||
unsignedtest5 1.9999999999 1.9999999999
|
||||
unsignedtest5 1.0000000009 1.0000000009
|
||||
unsignedtest5 0.0000000000 0.0000000000
|
||||
unsignedtest5 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs6;
|
||||
unsignedtest5 d1 d2
|
||||
unsignedtest5 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest5 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest5 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
unsignedtest5 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest5 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest5 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest5 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest5 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 != 125;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 != 1.25;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 != 0.125;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs4;
|
||||
unsignedtest6 d1 d2
|
||||
unsignedtest6 125 125
|
||||
unsignedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest6 12345678901234567890123456789012345678 1234567890123456789
|
||||
unsignedtest6 NULL NULL
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs5;
|
||||
unsignedtest6 d1 d2
|
||||
unsignedtest6 1.2500000000 1.2500000000
|
||||
unsignedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest6 1234567890123456789012345678.9012345678 123456789.0123456789
|
||||
unsignedtest6 NULL NULL
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs6;
|
||||
unsignedtest6 d1 d2
|
||||
unsignedtest6 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest6 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest6 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs5 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs6 SET d2=d1 WHERE d1 = d2;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs4;
|
||||
unsignedtest7 d1 d2
|
||||
unsignedtest7 125 125
|
||||
unsignedtest7 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest7 99999999999999999999999999999999999999 9999999999999999999
|
||||
unsignedtest7 0 0
|
||||
unsignedtest7 NULL NULL
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs5;
|
||||
unsignedtest7 d1 d2
|
||||
unsignedtest7 1.2500000000 1.2500000000
|
||||
unsignedtest7 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest7 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
unsignedtest7 1.1234567891 1.1234567891
|
||||
unsignedtest7 1.9999999999 1.9999999999
|
||||
unsignedtest7 1.0000000009 1.0000000009
|
||||
unsignedtest7 0.0000000000 0.0000000000
|
||||
unsignedtest7 NULL NULL
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs6;
|
||||
unsignedtest7 d1 d2
|
||||
unsignedtest7 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest7 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest7 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
unsignedtest7 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest7 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest7 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest7 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest7 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs5 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs6 SET d1=d2 WHERE d1 != d2;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs4;
|
||||
unsignedtest8 d1 d2
|
||||
unsignedtest8 125 125
|
||||
unsignedtest8 9999999999999999998 9999999999999999998
|
||||
unsignedtest8 9999999999999999999 9999999999999999999
|
||||
unsignedtest8 0 0
|
||||
unsignedtest8 NULL NULL
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs5;
|
||||
unsignedtest8 d1 d2
|
||||
unsignedtest8 1.2500000000 1.2500000000
|
||||
unsignedtest8 999999999.9999999998 999999999.9999999998
|
||||
unsignedtest8 999999999.9999999999 999999999.9999999999
|
||||
unsignedtest8 1.1234567891 1.1234567891
|
||||
unsignedtest8 1.9999999999 1.9999999999
|
||||
unsignedtest8 1.0000000009 1.0000000009
|
||||
unsignedtest8 0.0000000000 0.0000000000
|
||||
unsignedtest8 NULL NULL
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs6;
|
||||
unsignedtest8 d1 d2
|
||||
unsignedtest8 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest8 0.99999999999999999980000000000000000000 0.9999999999999999998
|
||||
unsignedtest8 0.99999999999999999990000000000000000000 0.9999999999999999999
|
||||
unsignedtest8 0.12345678901234567890000000000000000000 0.1234567890123456789
|
||||
unsignedtest8 0.19999999999999999990000000000000000000 0.1999999999999999999
|
||||
unsignedtest8 0.00000000000000000090000000000000000000 0.0000000000000000009
|
||||
unsignedtest8 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest8 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 < d2;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 < d2;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 < d2;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs4;
|
||||
unsignedtest9 d1 d2
|
||||
unsignedtest9 125 125
|
||||
unsignedtest9 99999999999999999999999999999999999998 9999999999999999998
|
||||
unsignedtest9 99999999999999999999999999999999999999 9999999999999999999
|
||||
unsignedtest9 0 0
|
||||
unsignedtest9 NULL NULL
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs5;
|
||||
unsignedtest9 d1 d2
|
||||
unsignedtest9 1.2500000000 1.2500000000
|
||||
unsignedtest9 9999999999999999999999999999.9999999998 999999999.9999999998
|
||||
unsignedtest9 9999999999999999999999999999.9999999999 999999999.9999999999
|
||||
unsignedtest9 1.1234567891 1.1234567891
|
||||
unsignedtest9 1.9999999999 1.9999999999
|
||||
unsignedtest9 1.0000000009 1.0000000009
|
||||
unsignedtest9 0.0000000000 0.0000000000
|
||||
unsignedtest9 NULL NULL
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs6;
|
||||
unsignedtest9 d1 d2
|
||||
unsignedtest9 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest9 0.99999999999999999999999999999999999998 0.9999999999999999998
|
||||
unsignedtest9 0.99999999999999999999999999999999999999 0.9999999999999999999
|
||||
unsignedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest9 0.19999999999999999999999999999999999999 0.1999999999999999999
|
||||
unsignedtest9 0.12345678901234567890123456789012345678 0.1234567890123456789
|
||||
unsignedtest9 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest9 NULL NULL
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs5 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs6 SET d1=d2 WHERE d1 > d2;
|
||||
SELECT "unsignedtest10a", d1, d2 FROM cs4;
|
||||
unsignedtest10a d1 d2
|
||||
unsignedtest10a 125 125
|
||||
unsignedtest10a 9999999999999999998 9999999999999999998
|
||||
unsignedtest10a 9999999999999999999 9999999999999999999
|
||||
unsignedtest10a 0 0
|
||||
unsignedtest10a NULL NULL
|
||||
SELECT "unsignedtest10a", d1, d2 FROM cs5;
|
||||
unsignedtest10a d1 d2
|
||||
unsignedtest10a 1.2500000000 1.2500000000
|
||||
unsignedtest10a 999999999.9999999998 999999999.9999999998
|
||||
unsignedtest10a 999999999.9999999999 999999999.9999999999
|
||||
unsignedtest10a 1.1234567891 1.1234567891
|
||||
unsignedtest10a 1.9999999999 1.9999999999
|
||||
unsignedtest10a 1.0000000009 1.0000000009
|
||||
unsignedtest10a 0.0000000000 0.0000000000
|
||||
unsignedtest10a NULL NULL
|
||||
SELECT "unsignedtest10a", d1, d2 FROM cs6;
|
||||
unsignedtest10a d1 d2
|
||||
unsignedtest10a 0.12500000000000000000000000000000000000 0.1250000000000000000
|
||||
unsignedtest10a 0.99999999999999999980000000000000000000 0.9999999999999999998
|
||||
unsignedtest10a 0.99999999999999999990000000000000000000 0.9999999999999999999
|
||||
unsignedtest10a 0.12345678901234567890000000000000000000 0.1234567890123456789
|
||||
unsignedtest10a 0.19999999999999999990000000000000000000 0.1999999999999999999
|
||||
unsignedtest10a 0.00000000000000000000000000000000000009 0.0000000000000000009
|
||||
unsignedtest10a 0.00000000000000000000000000000000000000 0.0000000000000000000
|
||||
unsignedtest10a NULL NULL
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
DROP DATABASE mcol641_update_db;
|
223
mysql-test/columnstore/basic/t/mcol641-aggregate.test
Normal file
223
mysql-test/columnstore/basic/t/mcol641-aggregate.test
Normal file
@ -0,0 +1,223 @@
|
||||
#source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS test_mcol641_aggregate;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE test_mcol641_aggregate;
|
||||
USE test_mcol641_aggregate;
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
DROP TABLE IF EXISTS cs5;
|
||||
--enable_warnings
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(19), d2 DECIMAL(19,10), d3 DECIMAL(19,19), d4 DECIMAL(19),d5 DECIMAL(19),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(19) UNSIGNED, d2 DECIMAL(19,10) UNSIGNED, d3 DECIMAL(19,19) UNSIGNED, d4 DECIMAL(19) UNSIGNED,d5 DECIMAL(19),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs5(d DECIMAL(25,19)) ENGINE=columnstore;
|
||||
|
||||
INSERT INTO cs1 VALUES
|
||||
(1234,5678,-0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,-5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(-123456789123456789,-5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
INSERT INTO cs2 VALUES
|
||||
(1234,5678,0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(123456789123456789123,5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
INSERT INTO cs3 VALUES
|
||||
(1234,5678,-0.12345678901234,2,1,1),
|
||||
(1234,-5678,0.12345678901234,2,1,1),
|
||||
(12345678901,12345678.90128,0.1234567890123,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.12345678901234,3,2,2),
|
||||
(-1234567899,-5678,0.1234567890123,3,2,2),
|
||||
(12345678901,12345678.9012,0.1234567890123,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2);
|
||||
INSERT INTO cs4 VALUES
|
||||
(1234,5678,0.12345678901234,2,1,1),
|
||||
(1234,5678,0.12345678901234,2,1,1),
|
||||
(12345678901,12345678.90128,0.1234567890123,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.12345678901234,3,2,2),
|
||||
(1234567899,5678,0.1234567890123,3,2,2),
|
||||
(12345678901,12345678.90123,0.1234567890123,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2);
|
||||
|
||||
#no GROUP BY DECIMAL(38)
|
||||
SELECT "sum(38)_test1", sum(d1),sum(d2),sum(d3) FROM cs1;
|
||||
SELECT "avg(38)_test1", avg(d1),avg(d2),avg(d3) FROM cs1;
|
||||
SELECT "count(38)_test1", count(d1),count(d2),count(d3) FROM cs1;
|
||||
SELECT "min(38)_test1", min(d1),min(d2),min(d3) FROM cs1;
|
||||
SELECT "max(38)_test1", max(d1),max(d2),max(d3) FROM cs1;
|
||||
SELECT "group_concat(38)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs1;
|
||||
SELECT "count(distinct 38)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs1;
|
||||
#no GROUP BY DECIMAL(38) UM 1phase aggregates
|
||||
SELECT "sum(38)_test1", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
SELECT "avg(38)_test1", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
SELECT "count(38)_test1", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
SELECT "min(38)_test1", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
SELECT "max(38)_test1", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
#Next two are proccessed by UM anyway
|
||||
SELECT "group_concat(38)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
SELECT "count(distinct 38)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs1)a1;
|
||||
#GROUP BY DECIMAL(38)
|
||||
SELECT "sum(38)_GB(38)_test1" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(38)_test1" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(38)_test1" ,d4,d5,count(d1),count(d2),count(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(38)_test1" ,d4,d5,min(d1),min(d2),min(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(38)_test1" ,d4,d5,max(d1),max(d2),max(d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(38)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2;
|
||||
SELECT "count(distinct 38)_GB(38)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs1 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
#with GROUP BY INT
|
||||
SELECT "sum(38)_GB(8)_test1" ,i1,sum(d1),sum(d2),sum(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
SELECT "avg(38)_GB(8)_test1" ,i1,avg(d1),avg(d2),avg(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
SELECT "count(38)_GB(8)_test1" ,i1,count(d1),count(d2),count(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
SELECT "min(38)_GB(8)_test1" ,i1,min(d1),min(d2),min(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
SELECT "max(38)_GB(8)_test1" ,i1,max(d1),max(d2),max(d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
SELECT "group_concat(38)_GB(8)_test1", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
SELECT "count(distinct 38)_GB(8)_test1", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs1 GROUP BY i1 ORDER BY 2;
|
||||
|
||||
#no GROUP BY UDECIMAL(38,10)
|
||||
SELECT "sum(38)_test2", sum(d1),sum(d2),sum(d3) FROM cs2;
|
||||
SELECT "avg(38)_test2", avg(d1),avg(d2),avg(d3) FROM cs2;
|
||||
SELECT "count(38)_test2", count(d1),count(d2),count(d3) FROM cs2;
|
||||
SELECT "min(38)_test2", min(d1),min(d2),min(d3) FROM cs2;
|
||||
SELECT "max(38)_test2", max(d1),max(d2),max(d3) FROM cs2;
|
||||
SELECT "group_concat(38)_test2", group_concat(d1),group_concat(d2),group_concat(d3) FROM cs2;
|
||||
SELECT "count(distinct 38)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs2;
|
||||
#no GROUP BY UDECIMAL(38) UM 1phase aggregates
|
||||
SELECT "sum(38)_test2", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
SELECT "avg(38)_test2", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
SELECT "count(38)_test2", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
SELECT "min(38)_test2", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
SELECT "max(38)_test2", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
SELECT "group_concat(38)_test2", group_concat(d1),group_concat(d2),group_concat(d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
SELECT "count(distinct 38)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs2)a1;
|
||||
#GROUP BY DECIMAL(38)
|
||||
SELECT "sum(38)_GB(38)_test2" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(38)_test2" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(38)_test2" ,d4,d5,count(d1),count(d2),count(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(38)_test2" ,d4,d5,min(d1),min(d2),min(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(38)_test2" ,d4,d5,max(d1),max(d2),max(d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(38)_test2", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(distinct 38)_GB(38)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs2 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
#with GROUP BY INT
|
||||
SELECT "sum(38)_GB(8)_test2" ,i1,sum(d1),sum(d2),sum(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(8)_test2" ,i1,avg(d1),avg(d2),avg(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(8)_test2" ,i1,count(d1),count(d2),count(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(8)_test2" ,i1,min(d1),min(d2),min(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(8)_test2" ,i1,max(d1),max(d2),max(d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(8)_test2", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d1),group_concat(d3 ORDER BY d1) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "count(distinct 38)_GB(8)_test2", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs2 GROUP BY i1 ORDER BY 2,3;
|
||||
|
||||
#no GROUP BY DECIMAL(19)
|
||||
SELECT "sum(19)_test3", sum(d1),sum(d2),sum(d3) FROM cs3;
|
||||
SELECT "avg(19)_test3", avg(d1),avg(d2),avg(d3) FROM cs3;
|
||||
SELECT "count(19)_test3", count(d1),count(d2),count(d3) FROM cs3;
|
||||
SELECT "min(19)_test3", min(d1),min(d2),min(d3) FROM cs3;
|
||||
SELECT "max(19)_test3", max(d1),max(d2),max(d3) FROM cs3;
|
||||
SELECT "group_concat(38)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d1),group_concat(d3 ORDER BY d1) FROM cs3;
|
||||
SELECT "count(distinct 38)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs3;
|
||||
#no GROUP BY DECIMAL(19) UM 1phase aggregates
|
||||
SELECT "sum(19)_test3", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
SELECT "avg(19)_test3", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
SELECT "count(19)_test3", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
SELECT "min(19)_test3", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
SELECT "max(19)_test3", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
SELECT "group_concat(38)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
SELECT "count(distinct 38)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs3)a1;
|
||||
#GROUP BY DECIMAL(38)
|
||||
SELECT "sum(38)_GB(38)_test3" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(38)_test3" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(38)_test3" ,d4,d5,count(d1),count(d2),count(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(38)_test3" ,d4,d5,min(d1),min(d2),min(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(38)_test3" ,d4,d5,max(d1),max(d2),max(d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(38)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(distinct 38)_GB(38)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs3 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
#with GROUP BY INT
|
||||
SELECT "sum(38)_GB(8)_test3" ,i1,sum(d1),sum(d2),sum(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(8)_test3" ,i1,avg(d1),avg(d2),avg(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(8)_test3" ,i1,count(d1),count(d2),count(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(8)_test3" ,i1,min(d1),min(d2),min(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(8)_test3" ,i1,max(d1),max(d2),max(d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(8)_test3", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "count(distinct 38)_GB(8)_test3", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs3 GROUP BY i1 ORDER BY 2,3;
|
||||
|
||||
#no GROUP BY UDECIMAL(19)
|
||||
SELECT "sum(19)_test4", sum(d1),sum(d2),sum(d3) FROM cs4;
|
||||
SELECT "avg(19)_test4", avg(d1),avg(d2),avg(d3) FROM cs4;
|
||||
SELECT "count(19)_test4", count(d1),count(d2),count(d3) FROM cs4;
|
||||
SELECT "min(19)_test4", min(d1),min(d2),min(d3) FROM cs4;
|
||||
SELECT "max(19)_test4", max(d1),max(d2),max(d3) FROM cs4;
|
||||
SELECT "group_concat(38)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs4;
|
||||
SELECT "count(distinct 38)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs4;
|
||||
#no GROUP BY UDECIMAL(19) UM 1phase aggregates
|
||||
SELECT "sum(19)_test4", sum(d1),sum(d2),sum(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
SELECT "avg(19)_test4", avg(d1),avg(d2),avg(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
SELECT "count(19)_test4", count(d1),count(d2),count(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
SELECT "min(19)_test4", min(d1),min(d2),min(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
SELECT "max(19)_test4", max(d1),max(d2),max(d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
SELECT "group_concat(38)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
SELECT "count(distinct 38)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM (SELECT d1,d2,d3 FROM cs4)a1;
|
||||
#GROUP BY DECIMAL(38)
|
||||
SELECT "sum(38)_GB(38)_test4" ,d4,d5,sum(d1),sum(d2),sum(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(38)_test4" ,d4,d5,avg(d1),avg(d2),avg(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(38)_test4" ,d4,d5,count(d1),count(d2),count(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(38)_test4" ,d4,d5,min(d1),min(d2),min(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(38)_test4" ,d4,d5,max(d1),max(d2),max(d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(38)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
SELECT "count(distinct 38)_GB(38)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs4 GROUP BY d4,d5 ORDER BY 2,3;
|
||||
#with GROUP BY INT
|
||||
SELECT "sum(38)_GB(38)_test4" ,i1,sum(d1),sum(d2),sum(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "avg(38)_GB(38)_test4" ,i1,avg(d1),avg(d2),avg(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "count(38)_GB(38)_test4" ,i1,count(d1),count(d2),count(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "min(38)_GB(38)_test4" ,i1,min(d1),min(d2),min(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "max(38)_GB(38)_test4" ,i1,max(d1),max(d2),max(d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "group_concat(38)_GB(8)_test4", group_concat(d1 ORDER BY d1),group_concat(d2 ORDER BY d2),group_concat(d3 ORDER BY d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
SELECT "count(distinct 38)_GB(8)_test4", count(distinct d1),count(distinct d2),count(distinct d3) FROM cs4 GROUP BY i1 ORDER BY 2,3;
|
||||
|
||||
#non-first const column
|
||||
SELECT sum(d1), "sum(38)_test1", sum(d2),sum(d3) FROM cs1;
|
||||
#rounding for AVG
|
||||
#The last digit rounding is an open question for aggregates.
|
||||
INSERT INTO cs5 VALUES (1),(0.1),(0.05),(0.05),(0.05),(0.05),(0.2),(0.154),(0.1),(0.05),(0.05);
|
||||
SELECT avg(d) FROM cs5;
|
||||
UPDATE cs5 SET d=-d;
|
||||
SELECT avg(d) FROM cs5;
|
||||
|
||||
#Add HAVING with GB
|
||||
|
||||
DROP TABLE cs1;
|
||||
DROP TABLE cs2;
|
||||
DROP TABLE cs3;
|
||||
DROP TABLE cs4;
|
||||
DROP TABLE cs5;
|
309
mysql-test/columnstore/basic/t/mcol641-arithmetic.test
Normal file
309
mysql-test/columnstore/basic/t/mcol641-arithmetic.test
Normal file
@ -0,0 +1,309 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_arithmetic_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_arithmetic_db;
|
||||
USE mcol641_arithmetic_db;
|
||||
|
||||
--disable_warnings
|
||||
DROP PROCEDURE IF EXISTS deleteproc;
|
||||
--enable_warnings
|
||||
|
||||
DELIMITER //;
|
||||
|
||||
CREATE PROCEDURE deleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
DELETE FROM cs7;
|
||||
DELETE FROM cs8;
|
||||
DELETE FROM cs9;
|
||||
DELETE FROM cs10;
|
||||
DELETE FROM cs11;
|
||||
DELETE FROM cs12;
|
||||
END//
|
||||
|
||||
DELIMITER ;//
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(19), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38), d2 DECIMAL(10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs5 (d1 DECIMAL(38,10), d2 DECIMAL(38,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs6 (d1 DECIMAL(19,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs7 (d1 DECIMAL(38,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs8 (d1 DECIMAL(38,10), d2 DECIMAL(10,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs9 (d1 DECIMAL(38,38), d2 DECIMAL(38,38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs10 (d1 DECIMAL(19,19), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs11 (d1 DECIMAL(38,38), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs12 (d1 DECIMAL(38,38), d2 DECIMAL(10,10)) ENGINE=columnstore;
|
||||
|
||||
# Addition
|
||||
# without overflow check
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 12345678901234567890123456789012345678), (12345678901234567890123456789012345678, -22345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "add_test_38_0_38_0", d1 + d2 FROM cs1;
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs2 VALUES (9999999999999999998, 1), (-9999999999999999998, -1);
|
||||
SELECT "add_test_19_0_19_0", d1 + d2 FROM cs2;
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 1234567890123456789), (12345678901234567890123456789012345678, -2234567890123456789);
|
||||
INSERT INTO cs3 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "add_test_38_0_19_0", d1 + d2 FROM cs3;
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 1234567890), (12345678901234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "add_test_38_0_10_0", d1 + d2 FROM cs4;
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, 1234567890123456789012345678.9012345678), (1234567890123456789012345678.9012345678, -2234567890123456789012345678.9012345678);
|
||||
INSERT INTO cs5 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_38_10_38_10", d1 + d2 FROM cs5;
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs6 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_19_10_19_10", d1 + d2 FROM cs6;
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 123456789.0123456789), (1234567890123456789012345678.9012345678, -223456789.0123456789);
|
||||
INSERT INTO cs7 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_38_10_19_10", d1 + d2 FROM cs7;
|
||||
INSERT INTO cs8 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs8 VALUES (1234567890123456789012345678.9012345678, 0.1234567890), (1234567890123456789012345678.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "add_test_38_10_10_10", d1 + d2 FROM cs8;
|
||||
INSERT INTO cs9 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs9 VALUES (0.12345678901234567890123456789012345678, 0.12345678901234567890123456789012345678), (0.12345678901234567890123456789012345678, -0.22345678901234567890123456789012345678);
|
||||
INSERT INTO cs9 VALUES (0.99999999999999999999999999999999999998, 0.00000000000000000000000000000000000001), (-0.99999999999999999999999999999999999998, -0.00000000000000000000000000000000000001);
|
||||
SELECT "add_test_38_38_38_38", d1 + d2 FROM cs9;
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.1234567890123456789), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs10 VALUES (0.9999999999999999998, 0.0000000000000000001), (-0.9999999999999999998, -0.0000000000000000001);
|
||||
SELECT "add_test_19_19_19_19", d1 + d2 FROM cs10;
|
||||
INSERT INTO cs11 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs11 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789), (0.12345678901234567890123456789012345678, -0.2234567890123456789);
|
||||
INSERT INTO cs11 VALUES (0.99999999999999999999999999999999999998, 0.0000000000000000001), (-0.99999999999999999999999999999999999998, -0.0000000000000000001);
|
||||
SELECT "add_test_38_38_19_19", d1 + d2 FROM cs11;
|
||||
INSERT INTO cs12 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.12345678901234567890123456789012345678, 0.1234567890), (0.12345678901234567890123456789012345678, -0.2234567890);
|
||||
INSERT INTO cs12 VALUES (0.99999999999999999999999999999999999998, 0.0000000001), (-0.99999999999999999999999999999999999998, -0.0000000001);
|
||||
SELECT "add_test_38_38_10_10", d1 + d2 FROM cs12;
|
||||
|
||||
# with overflow check
|
||||
# SET columnstore_decimal_overflow_check=on;
|
||||
# CALL deleteproc();
|
||||
# INSERT INTO cs1 VALUES (99999999999999999999999999999999999999, 99999999999999999999999999999999999999), (-99999999999999999999999999999999999999, -99999999999999999999999999999999999999);
|
||||
# SELECT "add_test_38_0_38_0_overflow", d1 + d2 FROM cs1;
|
||||
# INSERT INTO cs9 VALUES (0.99999999999999999999999999999999999999, 0.99999999999999999999999999999999999999), (-0.99999999999999999999999999999999999999, -0.99999999999999999999999999999999999999);
|
||||
# SELECT "add_test_38_38_38_38_overflow", d1 + d2 FROM cs9;
|
||||
|
||||
# Subtraction
|
||||
# without overflow check
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
CALL deleteproc();
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, -12345678901234567890123456789012345678), (-12345678901234567890123456789012345678, -22345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (99999999999999999999999999999999999999, 1), (-99999999999999999999999999999999999999, -1);
|
||||
SELECT "subtract_test_38_0_38_0", d1 - d2 FROM cs1;
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, -1234567890123456789), (-1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs2 VALUES (9999999999999999999, 1), (-9999999999999999999, -1);
|
||||
SELECT "subtract_test_19_0_19_0", d1 - d2 FROM cs2;
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 1234567890123456789), (-12345678901234567890123456789012345678, -2234567890123456789);
|
||||
INSERT INTO cs3 VALUES (99999999999999999999999999999999999999, 1), (-99999999999999999999999999999999999999, -1);
|
||||
SELECT "subtract_test_38_0_19_0", d1 - d2 FROM cs3;
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 1234567890), (-12345678901234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (99999999999999999999999999999999999999, 1), (-99999999999999999999999999999999999999, -1);
|
||||
SELECT "subtract_test_38_0_10_0", d1 - d2 FROM cs4;
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, -1234567890123456789012345678.9012345678), (-1234567890123456789012345678.9012345678, -2234567890123456789012345678.9012345678);
|
||||
INSERT INTO cs5 VALUES (9999999999999999999999999999.9999999999, 0.0000000001), (-9999999999999999999999999999.9999999999, -0.0000000001);
|
||||
SELECT "subtract_test_38_10_38_10", d1 - d2 FROM cs5;
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, -123456789.0123456789), (-123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs6 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "subtract_test_19_10_19_10", d1 - d2 FROM cs6;
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 123456789.0123456789), (-1234567890123456789012345678.9012345678, -223456789.0123456789);
|
||||
INSERT INTO cs7 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "subtract_test_38_10_19_10", d1 - d2 FROM cs7;
|
||||
INSERT INTO cs8 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs8 VALUES (1234567890123456789012345678.9012345678, 0.1234567890), (-1234567890123456789012345678.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (9999999999999999999999999999.9999999998, 0.0000000001), (-9999999999999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "subtract_test_38_10_10_10", d1 - d2 FROM cs8;
|
||||
INSERT INTO cs9 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs9 VALUES (-0.12345678901234567890123456789012345678, 0.12345678901234567890123456789012345678), (-0.12345678901234567890123456789012345678, -0.22345678901234567890123456789012345678);
|
||||
INSERT INTO cs9 VALUES (0.99999999999999999999999999999999999998, 0.00000000000000000000000000000000000001), (-0.99999999999999999999999999999999999998, -0.00000000000000000000000000000000000001);
|
||||
SELECT "subtract_test_38_38_38_38", d1 - d2 FROM cs9;
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.1234567890123456788), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs10 VALUES (0.9999999999999999998, 0.0000000100000000001), (-0.9999999999999999998, -0.0000000100000000001);
|
||||
SELECT "subtract_test_19_19_19_19", d1 - d2 FROM cs10;
|
||||
INSERT INTO cs11 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs11 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789), (-0.12345678901234567890123456789012345678, -0.2234567890123456789);
|
||||
INSERT INTO cs11 VALUES (0.99999999999999999999999999999999999998, 0.0000000000000000001), (-0.99999999999999999999999999999999999998, -0.0000000000000000001);
|
||||
SELECT "subtract_test_38_38_19_19", d1 - d2 FROM cs11;
|
||||
INSERT INTO cs12 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.12345678901234567890123456789012345678, 0.1234567890), (0.12345678901234567890123456789012345678, -0.2234567890);
|
||||
INSERT INTO cs12 VALUES (0.99999999999999999999999999999999999998, 0.0000000001), (-0.99999999999999999999999999999999999998, -0.0000000001);
|
||||
SELECT "subtract_test_38_38_10_10", d1 - d2 FROM cs12;
|
||||
|
||||
# with overflow check
|
||||
# SET columnstore_decimal_overflow_check=on;
|
||||
# CALL deleteproc();
|
||||
# INSERT INTO cs1 VALUES (99999999999999999999999999999999999999, -99999999999999999999999999999999999999), (99999999999999999999999999999999999999, -99999999999999999999999999999999999999);
|
||||
# SELECT "subtract_test_38_0_38_0_overflow", d1 - d2 FROM cs1;
|
||||
# INSERT INTO cs9 VALUES (0.99999999999999999999999999999999999999, -0.99999999999999999999999999999999999999), (0.99999999999999999999999999999999999999, -0.99999999999999999999999999999999999999);
|
||||
# SELECT "subtract_test_38_38_38_38_overflow", d1 - d2 FROM cs9;
|
||||
|
||||
# Multiplication
|
||||
# without overflow check
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
CALL deleteproc();
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs1 VALUES (9999999999999999999999999999, 10000000000), (-9999999999999999999999999999, -10000000000);
|
||||
SELECT "multiply_test_38_0_38_0", d1 * d2 FROM cs1;
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs2 VALUES (9999999999999999998, 1), (-9999999999999999998, -1);
|
||||
SELECT "multiply_test_19_0_19_0", d1 * d2 FROM cs2;
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (1234567890123456789, 1234567890123456789), (1234567890123456789, -2234567890123456789);
|
||||
INSERT INTO cs3 VALUES (99999999999999999999999999999999999998, 1), (-99999999999999999999999999999999999998, -1);
|
||||
SELECT "multiply_test_38_0_19_0", d1 * d2 FROM cs3;
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (1234567890123456789012345678, 1234567890), (1234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (99999999999999999999999999998, 1000000000), (-99999999999999999999999999998, -1000000000);
|
||||
SELECT "multiply_test_38_0_10_0", d1 * d2 FROM cs4;
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs5 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_38_10_38_10", d1 * d2 FROM cs5;
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs6 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_19_10_19_10", d1 * d2 FROM cs6;
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (123456789.0123456789, 123456789.0123456789), (123456789.0123456789, -223456789.0123456789);
|
||||
INSERT INTO cs7 VALUES (999999999.9999999998, 0.0000000001), (-999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_38_10_19_10", d1 * d2 FROM cs7;
|
||||
INSERT INTO cs8 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs8 VALUES (123456789012345678.9012345678, 0.1234567890), (123456789012345678.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (999999999999999999.9999999998, 0.0000000001), (-999999999999999999.9999999998, -0.0000000001);
|
||||
SELECT "multiply_test_38_10_10_10", d1 * d2 FROM cs8;
|
||||
INSERT INTO cs9 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs9 VALUES (0.1234567890123456789, 0.1234567890123456789), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs9 VALUES (0.9999999999999999998, 0.0000000000000000001), (-0.9999999999999999998, -0.0000000000000000001);
|
||||
SELECT "multiply_test_38_38_38_38", d1 * d2 FROM cs9;
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.1234567890123456789), (0.1234567890123456789, -0.2234567890123456789);
|
||||
INSERT INTO cs10 VALUES (0.9999999999999999998, 0.0000000000000000001), (-0.9999999999999999998, -0.0000000000000000001);
|
||||
SELECT "multiply_test_19_19_19_19", d1 * d2 FROM cs10;
|
||||
INSERT INTO cs11 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs11 VALUES (0.1234567890123456789, 0.123456789), (0.1234567890123456789, -0.223456789);
|
||||
INSERT INTO cs11 VALUES (0.9999999999999999998, 0.000000001), (-0.9999999999999999998, -0.000000001);
|
||||
SELECT "multiply_test_38_38_19_19", d1 * d2 FROM cs11;
|
||||
INSERT INTO cs12 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.1234567890123456789012345678, 0.12345), (0.1234567890123456789012345678, -0.22345);
|
||||
INSERT INTO cs12 VALUES (0.9999999999999999999999999998, 0.00001), (-0.9999999999999999999999999998, -0.00001);
|
||||
SELECT "multiply_test_38_38_10_10", d1 * d2 FROM cs12;
|
||||
|
||||
# with overflow check
|
||||
# SET columnstore_decimal_overflow_check=on;
|
||||
# CALL deleteproc();
|
||||
# INSERT INTO cs1 VALUES (99999999999999999999999999999999999999, 99999999999999999999999999999999999999), (-99999999999999999999999999999999999999, -99999999999999999999999999999999999999);
|
||||
# INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 12345678901234567890123456789012345678), (12345678901234567890123456789012345678, -22345678901234567890123456789012345678);
|
||||
# SELECT "multiply_test_38_0_38_0_overflow", d1 * d2 FROM cs1;
|
||||
# INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 1234567890123456789), (12345678901234567890123456789012345678, -2234567890123456789);
|
||||
# SELECT "multiply_test_38_0_19_0", d1 * d2 FROM cs3;
|
||||
# INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 1234567890), (12345678901234567890123456789012345678, -2234567890);
|
||||
# SELECT "multiply_test_38_0_10_0", d1 * d2 FROM cs4;
|
||||
# INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, 1234567890123456789012345678.9012345678), (1234567890123456789012345678.9012345678, -2234567890123456789012345678.9012345678);
|
||||
# SELECT "multiply_test_38_10_38_10", d1 * d2 FROM cs5;
|
||||
# INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 123456789.0123456789), (1234567890123456789012345678.9012345678, -223456789.0123456789);
|
||||
# SELECT "multiply_test_38_10_19_10", d1 * d2 FROM cs7;
|
||||
# INSERT INTO cs8 VALUES (1234567890123456789012345678.9012345678, 0.1234567890), (1234567890123456789012345678.9012345678, -0.2234567890);
|
||||
# SELECT "multiply_test_38_10_10_10", d1 * d2 FROM cs8;
|
||||
# INSERT INTO cs9 VALUES (0.12345678901234567890123456789012345678, 0.12345678901234567890123456789012345678), (0.12345678901234567890123456789012345678, -0.22345678901234567890123456789012345678);
|
||||
# SELECT "multiply_test_38_38_38_38_overflow", d1 * d2 FROM cs9;
|
||||
# INSERT INTO cs11 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789), (0.12345678901234567890123456789012345678, -0.2234567890123456789);
|
||||
# SELECT "multiply_test_38_38_19_19", d1 * d2 FROM cs11;
|
||||
# INSERT INTO cs12 VALUES (0.12345678901234567890123456789012345678, 0.1234567890), (0.12345678901234567890123456789012345678, -0.2234567890);
|
||||
# SELECT "multiply_test_38_38_10_10", d1 * d2 FROM cs12;
|
||||
|
||||
# Division
|
||||
# without overflow check
|
||||
SET columnstore_decimal_overflow_check=off;
|
||||
CALL deleteproc();
|
||||
INSERT INTO cs1 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 4567890123456789), (12345678901234567890123456789012345678, -223456789012345678901234567890123456);
|
||||
INSERT INTO cs1 VALUES (44444444444444444444444444444444444444, 10000000000), (-44444444444444444444444444444444, 1000);
|
||||
SELECT "divide_test_38_0_38_0", d1 / d2, d2 / d1 FROM cs1;
|
||||
INSERT INTO cs2 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs2 VALUES (1234567890123456789, 4567890123456789), (1234567890123456789, -223456789012345678);
|
||||
INSERT INTO cs2 VALUES (4444444444444444444, 10000000000), (-44444444444444444, -1000);
|
||||
SELECT "divide_test_19_0_19_0", d1 / d2, d2 / d1 FROM cs2;
|
||||
INSERT INTO cs3 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs3 VALUES (12345678901234567890123456789012345678, 4567890123456789), (12345678901234567890123456789012345678, -2234567890123456);
|
||||
INSERT INTO cs3 VALUES (4444444444444444444, 10000000000), (-44444444444444444, -1000);
|
||||
SELECT "divide_test_38_0_19_0", d1 / d2, d2 / d1 FROM cs3;
|
||||
INSERT INTO cs4 VALUES (1234, 5678), (1234, -5678);
|
||||
INSERT INTO cs4 VALUES (12345678901234567890123456789012345678, 4567890123), (12345678901234567890123456789012345678, -2234567890);
|
||||
INSERT INTO cs4 VALUES (4444444444444444444, 1000000000), (-44444444444444444, -1000);
|
||||
SELECT "divide_test_38_0_10_0", d1 / d2, d2 / d1 FROM cs4;
|
||||
INSERT INTO cs5 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs5 VALUES (1234567890123456789012345678.9012345678, 4567890123456789.0123456789), (1234567890123456789012345678.9012345678, -22345678901234567890123456.7890123456);
|
||||
INSERT INTO cs5 VALUES (4444444444444444444444444444.4444444444, 10000000000.0), (-4444444444444444444444.4444444444, 1000.0);
|
||||
SELECT "divide_test_38_10_38_10", d1 / d2, d2 / d1 FROM cs5;
|
||||
INSERT INTO cs6 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs6 VALUES (123456789.0123456789, 456789.0123456789), (123456789.0123456789, -22345678.9012345678);
|
||||
INSERT INTO cs6 VALUES (444444444.4444444444, 100000000.0), (-4444444.4444444444, -1000.0);
|
||||
SELECT "divide_test_19_10_19_10", d1 / d2, d2 / d1 FROM cs6;
|
||||
INSERT INTO cs7 VALUES (12.34, 56.78), (12.34, -56.78);
|
||||
INSERT INTO cs7 VALUES (1234567890123456789012345678.9012345678, 456789012.0123456789), (1234567890123456789012345678.9012345678, -223456789.7890123456);
|
||||
INSERT INTO cs7 VALUES (444444444.4444444444, 100000000.0), (-4444444.4444444444, -1000.0);
|
||||
SELECT "divide_test_38_10_19_10", d1 / d2, d2 / d1 FROM cs7;
|
||||
INSERT INTO cs8 VALUES (12.34, 0.5678), (12.34, -0.5678);
|
||||
INSERT INTO cs8 VALUES (1234567890123456789.9012345678, 0.4567890123), (1234567890123456789.9012345678, -0.2234567890);
|
||||
INSERT INTO cs8 VALUES (444444444.4444444444, 0.10000000), (-4444444.4444444444, -0.10000);
|
||||
SELECT "divide_test_38_10_10_10", d1 / d2, d2 / d1 FROM cs8;
|
||||
INSERT INTO cs9 VALUES (0.0000000000000000000000000001234, 0.000000000000000000005678), (0.000000000000000000000000001234, -0.000000000000000000005678);
|
||||
INSERT INTO cs9 VALUES (0.00000000000000000004567890123456789, 0.12345678901234567890123456789012345678), (-0.000000000000000002234567890123456789, 0.12345678901234567890123456789012345678);
|
||||
INSERT INTO cs9 VALUES (0.000000000000010000000000, 0.44444444444444444444444444444444444444), (0.00000000000001000, -0.44444444444444444444444444444444);
|
||||
# d2 / d1 will result in an overflow
|
||||
SELECT "divide_test_38_38_38_38", d1 / d2 FROM cs9;
|
||||
INSERT INTO cs10 VALUES (0.1234, 0.5678), (0.1234, -0.5678);
|
||||
INSERT INTO cs10 VALUES (0.1234567890123456789, 0.4567890123456789), (0.1234567890123456789, -0.223456789012345678);
|
||||
INSERT INTO cs10 VALUES (0.4444444444444444444, 0.10000000000), (-0.44444444444444444, -0.1000);
|
||||
SELECT "divide_test_19_19_19_19", d1 / d2, d2 / d1 FROM cs10;
|
||||
# we lose a few decimal places in the end in the following test,
|
||||
# so commenting out for now
|
||||
# INSERT INTO cs11 VALUES (0.00000000000000000000001234, 0.0000000000000005678), (0.0000000000000000000001234, -0.0000000000000005678);
|
||||
# INSERT INTO cs11 VALUES (0.000000000000004567890123456789, 0.1234567890123456789), (-0.0000000000002234567890123456789, 0.1234567890123456789);
|
||||
# INSERT INTO cs11 VALUES (0.0000000010000000000, 0.44444444444444444444), (0.000000001000, -0.4444444444444444444);
|
||||
# SELECT "divide_test_38_38_19_19", d1 / d2, d2 / d1 FROM cs11;
|
||||
INSERT INTO cs12 VALUES (0.0000000000000000000000000000001234, 0.5678), (0.0000000000000000000000000000001234, -0.5678);
|
||||
INSERT INTO cs12 VALUES (0.00000000001234567890123456789012345678, 0.4567890123), (0.00000000001234567890123456789012345678, -0.2234567890);
|
||||
INSERT INTO cs12 VALUES (0.000000000000000000004444444444444444444, 0.1000000000), (-0.0000000000000000000044444444444444444, -0.1000);
|
||||
# d2 / d1 will result in an overflow
|
||||
SELECT "divide_test_38_38_10_10", d1 / d2 FROM cs12;
|
||||
|
||||
|
||||
# with overflow check
|
||||
# we cannot trigger the division overflow of lhs == Decimal::minInt128 && rhs == -1
|
||||
# since lhs = -170141183460469231731687303715884105728 cannot be inserted
|
||||
# into a decimal(38) column
|
||||
|
||||
# Clean UP
|
||||
DROP PROCEDURE IF EXISTS deleteproc;
|
||||
DROP DATABASE mcol641_arithmetic_db;
|
54
mysql-test/columnstore/basic/t/mcol641-create.test
Normal file
54
mysql-test/columnstore/basic/t/mcol641-create.test
Normal file
@ -0,0 +1,54 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS test_mcol641_create;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE test_mcol641_create;
|
||||
USE test_mcol641_create;
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
--enable_warnings
|
||||
|
||||
CREATE TABLE cs1(d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(19), d5 DECIMAL(19,19),d6 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2(d1 DECIMAL(38) SIGNED, d2 DECIMAL(38,10) SIGNED, d3 DECIMAL(38,38) SIGNED) ENGINE=columnstore;
|
||||
#This must raise a warning
|
||||
CREATE TABLE cs3(d1 DECIMAL(38) UNSIGNED ZEROFILL, d2 DECIMAL(38,10) UNSIGNED ZEROFILL, d3 DECIMAL(38,38) UNSIGNED ZEROFILL) ENGINE=columnstore;
|
||||
CREATE TABLE cs4(d1 DECIMAL(18), d2 DECIMAL(18,10), d3 DECIMAL(18,18)) ENGINE=columnstore;
|
||||
SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,COLUMN_LENGTH,COLUMN_POSITION,COLUMN_DEFAULT,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columnstore_columns WHERE table_name = 'cs1' OR table_name = 'cs2' OR table_name = 'cs3' OR table_name = 'cs4' ORDER BY table_name,column_name ASC;
|
||||
|
||||
ALTER TABLE cs1 DROP COLUMN d4;
|
||||
ALTER TABLE cs1 ADD COLUMN d7 DECIMAL(38,37);
|
||||
ALTER TABLE cs2 ADD COLUMN d4 DECIMAL(30,30) SIGNED;
|
||||
ALTER TABLE cs3 ADD COLUMN d5 DECIMAL(20,18) UNSIGNED;
|
||||
# Bug. This must work fine.
|
||||
--error 1178
|
||||
ALTER TABLE cs1 RENAME COLUMN d7 TO d17;
|
||||
# Bug. This must work fine.
|
||||
--error 1178
|
||||
ALTER TABLE cs2 ADD COLUMN (d5 DECIMAL(38,5), d6 DECIMAL(35,15));
|
||||
# Bug. This must work fine.
|
||||
--error 1815
|
||||
ALTER TABLE cs3 MODIFY d1 DECIMAL(38) SIGNED;
|
||||
SELECT TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,COLUMN_LENGTH,COLUMN_POSITION,COLUMN_DEFAULT,NUMERIC_PRECISION,NUMERIC_SCALE FROM information_schema.columnstore_columns WHERE table_schema = 'test_mcol641_create' ORDER BY table_name,column_name ASC;
|
||||
|
||||
# This must return an error
|
||||
--error 1815
|
||||
CREATE TABLE cs5(d1 DECIMAL(39)) ENGINE=columnstore;
|
||||
--error 1425
|
||||
CREATE TABLE cs5(d1 DECIMAL(38,39)) ENGINE=columnstore;
|
||||
--error 1815
|
||||
ALTER TABLE cs1 ADD COLUMN d10 DECIMAL(40);
|
||||
--error 1425
|
||||
ALTER TABLE cs1 ADD COLUMN d11 DECIMAL(38,40);
|
||||
|
||||
DROP TABLE cs1;
|
||||
DROP TABLE cs2;
|
||||
DROP TABLE cs3;
|
||||
DROP TABLE cs4;
|
||||
|
||||
DROP DATABASE test_mcol641_create;
|
331
mysql-test/columnstore/basic/t/mcol641-delete.test
Normal file
331
mysql-test/columnstore/basic/t/mcol641-delete.test
Normal file
@ -0,0 +1,331 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_delete_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_delete_db;
|
||||
USE mcol641_delete_db;
|
||||
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
|
||||
DELIMITER //;
|
||||
|
||||
CREATE PROCEDURE signedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs1 VALUES (125, 125);
|
||||
INSERT INTO cs1 VALUES (-125, -125);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999);
|
||||
INSERT INTO cs1 VALUES (0, 0);
|
||||
INSERT INTO cs1 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs2 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs2 VALUES (-1.25, -1.25);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999998, -999999999.9999999998);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999999, -999999999.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs2 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs2 VALUES (-1.1234567891, -1.1234567891);
|
||||
INSERT INTO cs2 VALUES (-1.9999999999, -1.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs2 VALUES (-1.0000000009, -1.0000000009);
|
||||
INSERT INTO cs2 VALUES (0, 0);
|
||||
INSERT INTO cs2 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs3 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs3 VALUES (-0.125, -0.125);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999999, -0.9999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (-0.12345678901234567890123456789012345678, -0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (-0.19999999999999999999999999999999999999, -0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (-0.00000000000000000000000000000000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (0, 0);
|
||||
INSERT INTO cs3 VALUES (NULL, NULL);
|
||||
END//
|
||||
|
||||
CREATE PROCEDURE unsignedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs4 VALUES (125, 125);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs4 VALUES (0, 0);
|
||||
INSERT INTO cs4 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs5 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs5 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs5 VALUES (0, 0);
|
||||
INSERT INTO cs5 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs6 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs6 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs6 VALUES (0, 0);
|
||||
INSERT INTO cs6 VALUES (NULL, NULL);
|
||||
END//
|
||||
|
||||
CREATE PROCEDURE signeddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
END//
|
||||
|
||||
CREATE PROCEDURE unsigneddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
END//
|
||||
|
||||
DELIMITER ;//
|
||||
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
DROP TABLE IF EXISTS cs5;
|
||||
DROP TABLE IF EXISTS cs6;
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38,38), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(19) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs5 (d1 DECIMAL(38,10) UNSIGNED, d2 DECIMAL(19,10) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs6 (d1 DECIMAL(38,38) UNSIGNED, d2 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
|
||||
CALL signedinsertproc();
|
||||
|
||||
# Full table delete
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
SELECT "signedtest1", d1, d2 FROM cs1;
|
||||
SELECT "signedtest1", d1, d2 FROM cs2;
|
||||
SELECT "signedtest1", d1, d2 FROM cs3;
|
||||
|
||||
# Deletes with WHERE clause
|
||||
# Delete a single row with a constant value in WHERE clause
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1=-99999999999999999999999999999999999998;
|
||||
DELETE FROM cs1 WHERE d2=9999999999999999999;
|
||||
DELETE FROM cs2 WHERE d1=-9999999999999999999999999999.9999999998;
|
||||
DELETE FROM cs2 WHERE d2=999999999.9999999999;
|
||||
DELETE FROM cs3 WHERE d1=-0.99999999999999999999999999999999999998;
|
||||
DELETE FROM cs3 WHERE d2=0.9999999999999999999;
|
||||
SELECT "signedtest2", d1, d2 FROM cs1;
|
||||
SELECT "signedtest2", d1, d2 FROM cs2;
|
||||
SELECT "signedtest2", d1, d2 FROM cs3;
|
||||
|
||||
# Delete multiple rows
|
||||
# Deletes with multiple constant values in WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 in (-99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
DELETE FROM cs2 WHERE d1 in (-9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
DELETE FROM cs3 WHERE d1 in (-0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "signedtest3", d1, d2 FROM cs1;
|
||||
SELECT "signedtest3", d1, d2 FROM cs2;
|
||||
SELECT "signedtest3", d1, d2 FROM cs3;
|
||||
|
||||
# Deletes with comparison operators in WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 <= -99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
DELETE FROM cs2 WHERE d1 <= -9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
DELETE FROM cs3 WHERE d1 <= -0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs1;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs2;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 < -99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
DELETE FROM cs2 WHERE d1 < -9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
DELETE FROM cs3 WHERE d1 < -0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "signedtest4", d1, d2 FROM cs1;
|
||||
SELECT "signedtest4", d1, d2 FROM cs2;
|
||||
SELECT "signedtest4", d1, d2 FROM cs3;
|
||||
|
||||
# Delete with NULL in the WHERE clause
|
||||
DELETE FROM cs1 WHERE d1 is NULL;
|
||||
DELETE FROM cs2 WHERE d1 is NULL;
|
||||
DELETE FROM cs3 WHERE d1 is NULL;
|
||||
SELECT "signedtest5", d1, d2 FROM cs1;
|
||||
SELECT "signedtest5", d1, d2 FROM cs2;
|
||||
SELECT "signedtest5", d1, d2 FROM cs3;
|
||||
|
||||
# Delete with != operator
|
||||
DELETE FROM cs1 WHERE d1 != 125;
|
||||
DELETE FROM cs2 WHERE d1 != 1.25;
|
||||
DELETE FROM cs3 WHERE d1 != 0.125;
|
||||
SELECT "signedtest6", d1, d2 FROM cs1;
|
||||
SELECT "signedtest6", d1, d2 FROM cs2;
|
||||
SELECT "signedtest6", d1, d2 FROM cs3;
|
||||
|
||||
# Delete with non-constant value in the WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 = d2;
|
||||
DELETE FROM cs2 WHERE d1 = d2;
|
||||
DELETE FROM cs3 WHERE d1 = d2;
|
||||
SELECT "signedtest7", d1, d2 FROM cs1;
|
||||
SELECT "signedtest7", d1, d2 FROM cs2;
|
||||
SELECT "signedtest7", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 != d2;
|
||||
DELETE FROM cs2 WHERE d1 != d2;
|
||||
DELETE FROM cs3 WHERE d1 != d2;
|
||||
SELECT "signedtest8", d1, d2 FROM cs1;
|
||||
SELECT "signedtest8", d1, d2 FROM cs2;
|
||||
SELECT "signedtest8", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 < d2;
|
||||
DELETE FROM cs2 WHERE d1 < d2;
|
||||
DELETE FROM cs3 WHERE d1 < d2;
|
||||
SELECT "signedtest9", d1, d2 FROM cs1;
|
||||
SELECT "signedtest9", d1, d2 FROM cs2;
|
||||
SELECT "signedtest9", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
DELETE FROM cs1 WHERE d1 > d2;
|
||||
DELETE FROM cs2 WHERE d1 > d2;
|
||||
DELETE FROM cs3 WHERE d1 > d2;
|
||||
SELECT "signedtest10", d1, d2 FROM cs1;
|
||||
SELECT "signedtest10", d1, d2 FROM cs2;
|
||||
SELECT "signedtest10", d1, d2 FROM cs3;
|
||||
|
||||
# Deletes with functions and expressions in the WHERE clause
|
||||
|
||||
|
||||
# Repeat above tests for the unsigned case
|
||||
CALL unsignedinsertproc();
|
||||
|
||||
# Full table delete
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs6;
|
||||
|
||||
# Deletes with WHERE clause
|
||||
# Delete a single row with a constant value in WHERE clause
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1=99999999999999999999999999999999999998;
|
||||
DELETE FROM cs4 WHERE d2=9999999999999999999;
|
||||
DELETE FROM cs5 WHERE d1=9999999999999999999999999999.9999999998;
|
||||
DELETE FROM cs5 WHERE d2=999999999.9999999999;
|
||||
DELETE FROM cs6 WHERE d1=0.99999999999999999999999999999999999998;
|
||||
DELETE FROM cs6 WHERE d2=0.9999999999999999999;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs6;
|
||||
|
||||
# Delete multiple rows
|
||||
# Deletes with multiple constant values in WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 in (99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
DELETE FROM cs5 WHERE d1 in (9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
DELETE FROM cs6 WHERE d1 in (0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs6;
|
||||
|
||||
# Deletes with comparison operators in WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 >= 99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
DELETE FROM cs5 WHERE d1 >= 9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
DELETE FROM cs6 WHERE d1 >= 0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 > 99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
DELETE FROM cs5 WHERE d1 > 9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
DELETE FROM cs6 WHERE d1 > 0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "unsignedtest4", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest4", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest4", d1, d2 FROM cs6;
|
||||
|
||||
# Delete with NULL in the WHERE clause
|
||||
DELETE FROM cs4 WHERE d1 is NULL;
|
||||
DELETE FROM cs5 WHERE d1 is NULL;
|
||||
DELETE FROM cs6 WHERE d1 is NULL;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs6;
|
||||
|
||||
# Delete with != operator
|
||||
DELETE FROM cs4 WHERE d1 != 125;
|
||||
DELETE FROM cs5 WHERE d1 != 1.25;
|
||||
DELETE FROM cs6 WHERE d1 != 0.125;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs6;
|
||||
|
||||
# Delete with non-constant value in the WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 = d2;
|
||||
DELETE FROM cs5 WHERE d1 = d2;
|
||||
DELETE FROM cs6 WHERE d1 = d2;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 != d2;
|
||||
DELETE FROM cs5 WHERE d1 != d2;
|
||||
DELETE FROM cs6 WHERE d1 != d2;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 < d2;
|
||||
DELETE FROM cs5 WHERE d1 < d2;
|
||||
DELETE FROM cs6 WHERE d1 < d2;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
DELETE FROM cs4 WHERE d1 > d2;
|
||||
DELETE FROM cs5 WHERE d1 > d2;
|
||||
DELETE FROM cs6 WHERE d1 > d2;
|
||||
SELECT "unsignedtest10", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest10", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest10", d1, d2 FROM cs6;
|
||||
|
||||
# Deletes with functions and expressions in the WHERE clause
|
||||
|
||||
# Clean UP
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
DROP DATABASE mcol641_delete_db;
|
618
mysql-test/columnstore/basic/t/mcol641-functions.test
Normal file
618
mysql-test/columnstore/basic/t/mcol641-functions.test
Normal file
@ -0,0 +1,618 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS test_mcol641_functions;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE test_mcol641_functions;
|
||||
USE test_mcol641_functions;
|
||||
|
||||
# bitwise functions
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123, 234), (999999999999999999999999999999, -999999999999999999999999999999), (999999999999999999, -999999999999999999), (1329227995784915872903807060280344576, 1), (-1329227995784915872903807060280344576, 1);
|
||||
SELECT "bitwise_and_test", d1 & d2, d1 & d1, d2 & d2, d1 & 10, d2 & 10 FROM cs1;
|
||||
SELECT "bitwise_or_test", d1 | d2, d1 | d1, d2 | d2, d1 | 10, d2 | 10 FROM cs1;
|
||||
SELECT "bitwise_xor_test", d1 ^ d2, d1 ^ d1, d2 ^ d2, d1 ^ 10, d2 ^ 10 FROM cs1 WHERE d1 != 999999999999999999;
|
||||
SELECT "bitwise_leftshift_test", d1 << 1, d1 << 10, d1 << 20, d2 << 1, d2 << 10, d2 << 20 FROM cs1 WHERE d1 <= 999999999999999999;
|
||||
SELECT "bitwise_rightshift_test", d1 >> 1, d1 >> 10, d1 >> 20, d2 >> 1, d2 >> 10, d2 >> 20 FROM cs1;
|
||||
SELECT "bitcount_test", bit_count(d1), bit_count(d2) FROM cs1;
|
||||
|
||||
# period_diff function
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES (2001, 2011), (199001, 199010);
|
||||
SELECT "period_diff_test", PERIOD_DIFF(d1, d2), PERIOD_DIFF(d2, d1), PERIOD_DIFF(d1, d1) FROM cs1;
|
||||
|
||||
# cast a decimal as signed/unsigned/char
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123), (-234), (99999999999999999999999999999999999999), (-99999999999999999999999999999999999999), (12345678901234567890123456789012345678), (-12345678901234567890123456789012345678), (1329227995784915872903807060280344576), (-1329227995784915872903807060280344576);
|
||||
SELECT "cast_test1", CAST(d1 AS SIGNED) FROM cs1 WHERE d1 > -9223372036854775808; # -9223372036854775808 results in a NULL output
|
||||
SELECT "cast_test2", CAST(d1 AS UNSIGNED), CAST(d1 AS CHAR(50)) FROM cs1;
|
||||
|
||||
# cast a decimal as date, datetime
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES (20201212), (19901028183200);
|
||||
SELECT "cast_test3", CAST(d1 AS DATETIME), CAST(d1 AS DATE) FROM cs1;
|
||||
|
||||
# cast a decimal as double
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38,10)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123), (-123), (123.456), (-123.456), (1234567890123456789012345678.9012345678), (-1234567890123456789012345678.9012345678);
|
||||
SELECT "cast_test4", CAST(d1 AS DOUBLE) FROM cs1;
|
||||
|
||||
# cast a decimal/int/char/float/double as decimal
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 BIGINT, d5 CHAR(40), d6 FLOAT, d7 DOUBLE) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123, 123.456, .123, 123, "123", 123.456, 123.456),
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, .12345678901234567890123456789012345678, 123456789012345678, "12345678901234567890123456789012345678", 1234567890.1234567890, 12345678901234567.123456789012345678),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, .99999999999999999999999999999999999999, 999999999999999999, "99999999999999999999999999999999999999", 9999999999.9999999999, 99999999999999999999.999999999999999999);
|
||||
INSERT INTO cs1(d5) VALUES ("1.1234567890123456789012345e25");
|
||||
SELECT "cast_test5", CAST(d1 as DECIMAL(38,0)), CAST(d2 as DECIMAL(38,0)), CAST(d3 as DECIMAL(38,0)), CAST(d4 as DECIMAL(38,0)), CAST(d5 as DECIMAL(38,0)), CAST(d6 as DECIMAL(38,0)), CAST(d7 as DECIMAL(38,0)) FROM cs1;
|
||||
SELECT "cast_test5", CAST(d2 as DECIMAL(38,10)), CAST(d3 as DECIMAL(38,10)), CAST(d4 as DECIMAL(38,10)), CAST(d6 as DECIMAL(38,10)) FROM cs1;
|
||||
SELECT "cast_test5", CAST(d3 as DECIMAL(38,38)), CAST(d6 as DECIMAL(38,38)), CAST(d7 as DECIMAL(38,38)) FROM cs1;
|
||||
|
||||
# inet_ntoa() and inet_aton()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (127), (1278), (1234567890);
|
||||
SELECT "inet_test", INET_NTOA(d1) FROM cs1;
|
||||
SELECT "inet_test", d1 FROM cs1 where INET_ATON(d1) = d1;
|
||||
|
||||
# char()
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES (1296911693), (77);
|
||||
SELECT "char_test", CHAR(d1) FROM cs1;
|
||||
|
||||
# string functions
|
||||
INSERT INTO cs1 VALUES(20201010), (19901230), (1234), (12345);
|
||||
SELECT "monthname_test", MONTHNAME(d1), SEC_TO_TIME(d1) FROM cs1;
|
||||
|
||||
# real functions
|
||||
# abs()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38, 10), d3 DECIMAL(38, 38)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(-123456, -123.456, -0.123456),
|
||||
(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999),
|
||||
(NULL, NULL, NULL),
|
||||
(-1234, -1234, -0.1234),
|
||||
(1234, 1234, 0.1234);
|
||||
SELECT "abs_test", ABS(d1), ABS(d2), ABS(d3) FROM cs1;
|
||||
|
||||
# round()/truncate()
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES
|
||||
(123456, 123.456, 0.123456),
|
||||
(-123456, -123.456, -0.123456),
|
||||
(9999999999999999999999999999999999999, 999999999999999999999999999.9999999999, 0.9999999999999999999999999999999999999),
|
||||
(-9999999999999999999999999999999999999, -999999999999999999999999999.9999999999, -0.9999999999999999999999999999999999999),
|
||||
(1234567890123456789012345679012345678, 123456789012345678901234567.9012345678, 0.1234567890123456789012345679012345678),
|
||||
(-1234567890123456789012345679012345678, -123456789012345678901234567.9012345678, -0.1234567890123456789012345679012345678),
|
||||
(NULL, NULL, NULL);
|
||||
SELECT "round_test", ROUND(d1), ROUND(d1,5), ROUND(d1,-5), ROUND(d1,10), ROUND(d1,-10), ROUND(d1,-38) FROM cs1; #ROUND(d1,38) has a bug
|
||||
SELECT "round_test", ROUND(d2), ROUND(d2,5), ROUND(d2,-5), ROUND(d2,10), ROUND(d2,-10), ROUND(d2,38), ROUND(d2,-38) FROM cs1;
|
||||
SELECT "round_test", ROUND(d3), ROUND(d3,5), ROUND(d3,-5), ROUND(d3,10), ROUND(d3,-10), ROUND(d3,38), ROUND(d3,-38) FROM cs1;
|
||||
SELECT "round_test", d2 FROM cs1 WHERE ROUND(d2) = "123"; # triggers getDoubleVal()
|
||||
SELECT "truncate_test", TRUNCATE(d1, 0), TRUNCATE(d1,5), TRUNCATE(d1,-5), TRUNCATE(d1,10), TRUNCATE(d1,-10), TRUNCATE(d1,-38) FROM cs1; # TRUNCATE(d1,38) has a bug
|
||||
SELECT "truncate_test", TRUNCATE(d2, 0), TRUNCATE(d2,5), TRUNCATE(d2,-5), TRUNCATE(d2,10), TRUNCATE(d2,-10), TRUNCATE(d2,38), TRUNCATE(d2,-38) FROM cs1;
|
||||
# See MDEV-22502. Fixed now! So enabling back the test for d3.
|
||||
SELECT "truncate_test", TRUNCATE(d3, 0), TRUNCATE(d3,5), TRUNCATE(d3,-5), TRUNCATE(d3,10), TRUNCATE(d3,-10), TRUNCATE(d3,38), TRUNCATE(d3,-38) FROM cs1;
|
||||
SELECT "truncate_test", d2 FROM cs1 WHERE TRUNCATE(d2, 0) = "123"; # triggers getDoubleVal()
|
||||
|
||||
# format()
|
||||
# Commenting out format() tests until MDEV-23118 is fixed.
|
||||
#SELECT "format_test", FORMAT(d1, 0), FORMAT(d1, 10), FORMAT(d1, 38),
|
||||
# FORMAT(d2, 0), FORMAT(d2, 10), FORMAT(d2, 38),
|
||||
# FORMAT(d3, 0), FORMAT(d3, 10), FORMAT(d3, 38) FROM cs1;
|
||||
|
||||
# mod()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38,5), d2 DECIMAL(38,5), d3 DECIMAL(38), d4 DECIMAL(38), d5 DOUBLE) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(1234.5678, 123.456, 12345678, 123456, 123456),
|
||||
(1234567890123456789012345678.90123, 1234567890123456789012345678.90123, 12345678901234567890123456789012345678, 12345678901234567890123456789012345679, 123456781234),
|
||||
(-1234.5678, 123.456, -12345678, 123456, -123456),
|
||||
(1234567890123456789012345678.90124, -1234567890123456789012345678.90123, 12345678901234567890123456789012345678, -12345678901234567890123456789012345679, 123456781234);
|
||||
# MOD(d3,d1) is a floating point division which can result in different results from innodb due to rounding
|
||||
# Also, MOD() between decimal and double is excluded from the query as we return the correct result but innodb does not.
|
||||
#SELECT "mod_test", MOD(d1,d2), MOD(d2,d1), MOD(d1,d3), MOD(d3,d4), MOD(d4,d3), MOD(d1,d5), MOD(d2,d5), MOD(d3,d5), MOD(d4,d5) FROM cs1;
|
||||
SELECT "mod_test", MOD(d1,d2), MOD(d2,d1), MOD(d1,d3), MOD(d3,d4), MOD(d4,d3) FROM cs1;
|
||||
|
||||
# floor(), ceil()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 INT, d5 DOUBLE, d6 DECIMAL(18,10)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678, 123456, 123456.789, 12345678.9012345678),
|
||||
(123456, 123456.789, 0.123456789, 123456, 123456.789, 1234.567),
|
||||
# Uncomment the below 2 inserts for 999... when MDEV-23032 is fixed.
|
||||
#(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 999999, 99999.999, 99999999.9999999999),
|
||||
(999999, 999999.999, 0.9999999, 999999, 999999.999, 9999.999),
|
||||
(999999, 999999.999, 0.9999999, 999999, 999998.999, 9999.999),
|
||||
(-12345678901234567890123456789012345678, -1234567890123456789012345678.9012345678, -0.12345678901234567890123456789012345678, -123456, -123456.789, -12345678.9012345678),
|
||||
(-123456, -123456.789, -0.123456789, -123456, -123456.789, -1234.567),
|
||||
#(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -999999, -99999.999, -99999999.9999999999),
|
||||
(-999999, -999999.999, -0.9999999, -999999, -999999.999, -9999.999);
|
||||
SELECT "floor_test", FLOOR(d1), FLOOR(d2), FLOOR(d3), FLOOR(d4), FLOOR(d5), FLOOR(d6) FROM cs1;
|
||||
SELECT "floor_test", d1, d4 FROM cs1 WHERE FLOOR(d1) = FLOOR(d4); # triggers predicateoperator numericCompare()
|
||||
SELECT "floor_test", d1, d4 FROM cs1 WHERE FLOOR(d1) = d4;
|
||||
SELECT "floor_test", d1, d5 FROM cs1 WHERE FLOOR(d1) = FLOOR(d5);
|
||||
SELECT "floor_test", d1, d5 FROM cs1 WHERE FLOOR(d1) = d5; # triggers Func_floor::getDoubleVal()
|
||||
SELECT "floor_test", d1, d2 FROM cs1 WHERE FLOOR(d1) = FLOOR(d2);
|
||||
|
||||
SELECT "ceil_test", CEIL(d1), CEIL(d2), CEIL(d3), CEIL(d4), CEIL(d5), CEIL(d6) FROM cs1;
|
||||
SELECT "ceil_test", d1, d4 FROM cs1 WHERE CEIL(d1) = CEIL(d4); # triggers predicateoperator numericCompare()
|
||||
SELECT "ceil_test", d1, d4 FROM cs1 WHERE CEIL(d1) = d4;
|
||||
SELECT "ceil_test", d1, d5 FROM cs1 WHERE CEIL(d1) = CEIL(d5);
|
||||
SELECT "ceil_test", d1, d5 FROM cs1 WHERE CEIL(d1) = d5; # triggers Func_floor::getDoubleVal()
|
||||
SELECT "ceil_test", d1, d2 FROM cs1 WHERE CEIL(d1) = CEIL(d2);
|
||||
|
||||
# makedate(), maketime()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(20)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (31, 31, 0.31, 2019), (32, 32, 0.32, 2020), (33, 34.7, 0.345, 18);
|
||||
SELECT "makedatetime_test", MAKEDATE(d4, d1), MAKEDATE(d4, d2), MAKEDATE(d4, d3), MAKETIME(d4, d2, d1) FROM cs1;
|
||||
|
||||
# ELT()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (0, 0.1), (2, 2.1), (1, 1.7), (-1, -1.2);
|
||||
SELECT "elt_test", ELT(d1, "FIRST", "SECOND"), ELT(d2, "FIRST", "SECOND") FROM cs1;
|
||||
|
||||
# least(), greatest()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 INT, d5 DOUBLE) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678, 1234, 1.23e45),
|
||||
(-12345678901234567890123456789012345678, -1234567890123456789012345678.9012345678, -0.12345678901234567890123456789012345678, -1234, -1.234e40);
|
||||
SELECT "greatest_test", GREATEST(d1, 12345678901234567890123456789012345679) c1, GREATEST(d2, 1234567890123456789012345678.9012345679) c2,
|
||||
GREATEST(d3, 0.12345678901234567890123456789012345677) c3, GREATEST(d1, d4) c4 FROM cs1;
|
||||
SELECT "greatest_test", d2 FROM cs1 WHERE GREATEST(d2, d5) = d5; # triggers getDoubleVal()
|
||||
SELECT "least_test", LEAST(d1, 12345678901234567890123456789012345679) c1, LEAST(d2, 1234567890123456789012345678.9012345679) c2,
|
||||
LEAST(d3, 0.12345678901234567890123456789012345677) c3, LEAST(d1, d4) c4 FROM cs1;
|
||||
SELECT "least_test", d2 FROM cs1 WHERE LEAST(d2, d5) = d5; # triggers getDoubleVal()
|
||||
|
||||
# functor_bool: (not)between, (not)in, regexp, is(not)null, is(not)true, is(not)false
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38, 10), d3 DECIMAL(38, 38)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(123456, 123.456, 0.123456),
|
||||
(-123456, -123.456, -0.123456),
|
||||
(99999999999999999999999999999999999998, 999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998),
|
||||
(-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998),
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678),
|
||||
(-12345678901234567890123456789012345678, -1234567890123456789012345678.9012345678, -0.12345678901234567890123456789012345678),
|
||||
(0,0,0),
|
||||
(NULL, NULL, NULL);
|
||||
|
||||
SELECT "between_test", d1 BETWEEN 123455 AND 123457 f1,
|
||||
d2 BETWEEN 999999999999999999999999999.9999999997 AND 999999999999999999999999999.9999999999 f2,
|
||||
d3 BETWEEN -0.12345678901234567890123456789012345679 AND -0.12345678901234567890123456789012345677 f3 FROM cs1;
|
||||
|
||||
SELECT "notbetween_test", d1 NOT BETWEEN 123455 AND 123457 f1,
|
||||
d2 NOT BETWEEN 999999999999999999999999999.9999999997 AND 999999999999999999999999999.9999999999 f2,
|
||||
d3 NOT BETWEEN -0.12345678901234567890123456789012345679 AND -0.12345678901234567890123456789012345677 f3 FROM cs1;
|
||||
|
||||
SELECT "in_test", d1 IN (99999999999999999999999999999999999998, -12345678901234567890123456789012345678) f1,
|
||||
d2 IN (-9999999999999999999999999999.9999999998, 1234567890123456789012345678.9012345678) f2,
|
||||
d3 IN (-0.99999999999999999999999999999999999998, -0.12345678901234567890123456789012345678) f3 FROM cs1;
|
||||
|
||||
SELECT "notin_test", d1 NOT IN (99999999999999999999999999999999999998, -12345678901234567890123456789012345678) f1,
|
||||
d2 NOT IN (-9999999999999999999999999999.9999999998, 1234567890123456789012345678.9012345678) f2,
|
||||
d3 NOT IN (-0.99999999999999999999999999999999999998, -0.12345678901234567890123456789012345678) f3 FROM cs1;
|
||||
|
||||
SELECT "regex_test", d1 REGEXP "123", d2 REGEXP "8.9", d3 REGEXP "0.9" FROM cs1;
|
||||
|
||||
SELECT "is(not)null_test", d1 IS NULL, d1 IS NOT NULL, d2 IS NULL, d2 IS NOT NULL, d3 IS NULL, d3 IS NOT NULL FROM cs1;
|
||||
|
||||
SELECT "truthfunctions_test", d1 IS TRUE AS f1, d1 IS NOT TRUE AS f2, d1 IS FALSE AS f3, d1 IS NOT FALSE AS f4,
|
||||
d2 IS TRUE AS f5, d2 IS NOT TRUE AS f6, d2 IS FALSE AS f7, d2 IS NOT FALSE AS f8,
|
||||
d3 IS TRUE AS f9, d3 IS NOT TRUE AS f10, d3 IS FALSE AS f11, d3 IS NOT FALSE AS f12 FROM cs1;
|
||||
|
||||
# if()/coalesce()
|
||||
# for the case "select if(a, b, c)" where a=decimal(38), b=decimal(38,10), c=decimal(38,38),
|
||||
# we can have an overflow, since the resulting column can be of type decimal(M,D) where M > 38
|
||||
# which we currently do not support in ColumnStore. Same is true for coalesce.
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38, 10), d2 DECIMAL(38, 10), d3 DECIMAL(38, 10)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(0, 1234567890123456789012345678.9012345678, -1234567890123456789012345678.9012345678),
|
||||
(1234567890123456789012345678.9012345678, 0, -1234567890123456789012345678.9012345678),
|
||||
(1234567890123456789012345678.9012345678, -1234567890123456789012345678.9012345678, 0),
|
||||
(NULL, -9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999998),
|
||||
(-9999999999999999999999999999.9999999998, NULL, 9999999999999999999999999999.9999999998),
|
||||
(-9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999998, NULL),
|
||||
(NULL, NULL, NULL);
|
||||
|
||||
SELECT "if_test", IF(d1, d2, d3) AS f1, IF(d1, d3, d2) AS f2, IF(d2, d1, d3) AS f3, IF(d2, d3, d1) AS f4,
|
||||
IF(d3, d1, d2) AS f5, IF(d3, d2, d1) AS f6 FROM cs1;
|
||||
|
||||
SELECT "coalesce_test", COALESCE(d1, d2, d3) AS f1, COALESCE(d1, d3, d2) AS f2, COALESCE(d2, d1, d3) AS f3,
|
||||
COALESCE(d2, d3, d1) AS f4, COALESCE(d3, d1, d2) AS f5, COALESCE(d3, d2, d1) AS f6 FROM cs1;
|
||||
|
||||
# case()
|
||||
SELECT "case_test", CASE d1 WHEN 1234567890123456789012345678.9012345678 THEN d2 ELSE d3 END AS f1,
|
||||
CASE d2 WHEN -1234567890123456789012345678.9012345678 THEN d1 ELSE d3 END AS f2,
|
||||
CASE d3 WHEN -d1 THEN 9999999999999999999999999999.9999999999 ELSE -9999999999999999999999999999.9999999999 END AS f3
|
||||
FROM cs1;
|
||||
|
||||
# repeat the tests for unsigned
|
||||
# bitwise functions
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123, 234), (999999999999999999999999999999, 999999999999999999999999999998), (999999999999999999, 999999999999999998), (1329227995784915872903807060280344576, 1), (1, 1329227995784915872903807060280344576);
|
||||
SELECT "bitwise_and_test", d1 & d2, d1 & d1, d2 & d2, d1 & 10, d2 & 10 FROM cs1;
|
||||
SELECT "bitwise_or_test", d1 | d2, d1 | d1, d2 | d2, d1 | 10, d2 | 10 FROM cs1;
|
||||
# The d1 ^ d2 produces 18446744073709551614 that is the magic value for UBIGINT NULL
|
||||
SELECT "bitwise_xor_test", d1 ^ d2, d1 ^ d1, d2 ^ d2, d1 ^ 10, d2 ^ 10 FROM cs1 WHERE d1 != 999999999999999999;
|
||||
# The d1 << 1 produces 18446744073709551614 that is the magic value for UBIGINT NULL
|
||||
SELECT "bitwise_leftshift_test", d1 << 1, d1 << 10, d1 << 20, d2 << 1, d2 << 10, d2 << 20 FROM cs1 WHERE d1 <= 999999999999999999;
|
||||
SELECT "bitwise_rightshift_test", d1 >> 1, d1 >> 10, d1 >> 20, d2 >> 1, d2 >> 10, d2 >> 20 FROM cs1;
|
||||
SELECT "bitcount_test", bit_count(d1), bit_count(d2) FROM cs1;
|
||||
|
||||
# period_diff function
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES (2001, 2011), (199001, 199010);
|
||||
SELECT "period_diff_test", PERIOD_DIFF(d1, d2), PERIOD_DIFF(d2, d1), PERIOD_DIFF(d1, d1) FROM cs1;
|
||||
|
||||
# cast a decimal as signed/unsigned/char
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123), (234), (99999999999999999999999999999999999999), (99999999999999999999999999999999999998), (12345678901234567890123456789012345678), (12345678901234567890123456789012345679), (1329227995784915872903807060280344576), (1329227995784915872903807060280344577);
|
||||
SELECT "cast_test1", CAST(d1 AS SIGNED) FROM cs1 WHERE d1 > 12345678901234567890123456789012345678;
|
||||
SELECT "cast_test2", CAST(d1 AS UNSIGNED), CAST(d1 AS CHAR(50)) FROM cs1;
|
||||
|
||||
# cast a decimal as date, datetime
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES (20201212), (19901028183200);
|
||||
SELECT "cast_test3", CAST(d1 AS DATETIME), CAST(d1 AS DATE) FROM cs1;
|
||||
|
||||
# cast a decimal as double
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38,10) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123), (234), (123.456), (234.567), (1234567890123456789012345678.9012345678), (9999999999999999999999999999.9999999999);
|
||||
SELECT "cast_test4", CAST(d1 AS DOUBLE) FROM cs1;
|
||||
|
||||
# cast a decimal/int/char/float/double as decimal
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 BIGINT UNSIGNED, d5 CHAR(40), d6 FLOAT UNSIGNED, d7 DOUBLE UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (123, 123.456, .123, 123, "123", 123.456, 123.456),
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, .12345678901234567890123456789012345678, 123456789012345678, "12345678901234567890123456789012345678", 1234567890.1234567890, 12345678901234567.123456789012345678),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, .99999999999999999999999999999999999999, 999999999999999999, "99999999999999999999999999999999999999", 9999999999.9999999999, 99999999999999999999.999999999999999999);
|
||||
INSERT INTO cs1(d5) VALUES ("1.1234567890123456789012345e25");
|
||||
SELECT "cast_test5", CAST(d1 as DECIMAL(38,0)), CAST(d2 as DECIMAL(38,0)), CAST(d3 as DECIMAL(38,0)), CAST(d4 as DECIMAL(38,0)), CAST(d5 as DECIMAL(38,0)), CAST(d6 as DECIMAL(38,0)), CAST(d7 as DECIMAL(38,0)) FROM cs1;
|
||||
SELECT "cast_test5", CAST(d2 as DECIMAL(38,10)), CAST(d3 as DECIMAL(38,10)), CAST(d4 as DECIMAL(38,10)), CAST(d6 as DECIMAL(38,10)) FROM cs1;
|
||||
SELECT "cast_test5", CAST(d3 as DECIMAL(38,38)), CAST(d6 as DECIMAL(38,38)), CAST(d7 as DECIMAL(38,38)) FROM cs1;
|
||||
|
||||
# inet_ntoa() and inet_aton()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (127), (1278), (1234567890);
|
||||
SELECT "inet_test", INET_NTOA(d1) FROM cs1;
|
||||
SELECT "inet_test", d1 FROM cs1 where INET_ATON(d1) = d1;
|
||||
|
||||
# char()
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES (1296911693), (77);
|
||||
SELECT "char_test", CHAR(d1) FROM cs1;
|
||||
|
||||
# string functions
|
||||
INSERT INTO cs1 VALUES(20201010), (19901230), (1234), (12345);
|
||||
SELECT "monthname_test", MONTHNAME(d1), SEC_TO_TIME(d1) FROM cs1;
|
||||
|
||||
# real functions
|
||||
# abs()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38, 10) UNSIGNED, d3 DECIMAL(38, 38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(123456, 123.456, 0.123456),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999),
|
||||
(NULL, NULL, NULL),
|
||||
(1234, 1234, 0.1234),
|
||||
(1234, 1234, 0.1234);
|
||||
SELECT "abs_test", ABS(d1), ABS(d2), ABS(d3) FROM cs1;
|
||||
|
||||
# round()/truncate()
|
||||
DELETE FROM cs1;
|
||||
INSERT INTO cs1 VALUES
|
||||
(123456, 123.456, 0.123456),
|
||||
(9999999999999999999999999999999999999, 999999999999999999999999999.9999999999, 0.9999999999999999999999999999999999999),
|
||||
(1234567890123456789012345679012345678, 123456789012345678901234567.9012345678, 0.1234567890123456789012345679012345678),
|
||||
(NULL, NULL, NULL);
|
||||
SELECT "round_test", ROUND(d1), ROUND(d1,5), ROUND(d1,-5), ROUND(d1,10), ROUND(d1,-10), ROUND(d1,-38) FROM cs1; #ROUND(d1,38) has a bug
|
||||
SELECT "round_test", ROUND(d2), ROUND(d2,5), ROUND(d2,-5), ROUND(d2,10), ROUND(d2,-10), ROUND(d2,38), ROUND(d2,-38) FROM cs1;
|
||||
SELECT "round_test", ROUND(d3), ROUND(d3,5), ROUND(d3,-5), ROUND(d3,10), ROUND(d3,-10), ROUND(d3,38), ROUND(d3,-38) FROM cs1;
|
||||
SELECT "round_test", d2 FROM cs1 WHERE ROUND(d2) = "123"; # triggers getDoubleVal()
|
||||
SELECT "truncate_test", TRUNCATE(d1, 0), TRUNCATE(d1,5), TRUNCATE(d1,-5), TRUNCATE(d1,10), TRUNCATE(d1,-10), TRUNCATE(d1,-38) FROM cs1; # TRUNCATE(d1,38) has a bug
|
||||
SELECT "truncate_test", TRUNCATE(d2, 0), TRUNCATE(d2,5), TRUNCATE(d2,-5), TRUNCATE(d2,10), TRUNCATE(d2,-10), TRUNCATE(d2,38), TRUNCATE(d2,-38) FROM cs1;
|
||||
# See MDEV-22502. Fixed now! So enabling back the test for d3.
|
||||
SELECT "truncate_test", TRUNCATE(d3, 0), TRUNCATE(d3,5), TRUNCATE(d3,-5), TRUNCATE(d3,10), TRUNCATE(d3,-10), TRUNCATE(d3,38), TRUNCATE(d3,-38) FROM cs1;
|
||||
SELECT "truncate_test", d2 FROM cs1 WHERE TRUNCATE(d2, 0) = "123"; # triggers getDoubleVal()
|
||||
|
||||
# format()
|
||||
# Commenting out format() tests until MDEV-23118 is fixed.
|
||||
#SELECT "format_test", FORMAT(d1, 0), FORMAT(d1, 10), FORMAT(d1, 38),
|
||||
# FORMAT(d2, 0), FORMAT(d2, 10), FORMAT(d2, 38),
|
||||
# FORMAT(d3, 0), FORMAT(d3, 10), FORMAT(d3, 38) FROM cs1;
|
||||
|
||||
# mod()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38,5) UNSIGNED, d2 DECIMAL(38,5) UNSIGNED, d3 DECIMAL(38) UNSIGNED, d4 DECIMAL(38) UNSIGNED, d5 DOUBLE UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(1234.5678, 123.456, 12345678, 123456, 123456),
|
||||
(1234567890123456789012345678.90123, 1234567890123456789012345678.90123, 12345678901234567890123456789012345678, 12345678901234567890123456789012345679, 123456781234);
|
||||
# MOD(d3,d1) is a floating point division which can result in different results from innodb due to rounding
|
||||
# Also, MOD() between decimal and double is excluded from the query as we return the correct result but innodb does not.
|
||||
#SELECT "mod_test", MOD(d1,d2), MOD(d2,d1), MOD(d1,d3), MOD(d3,d4), MOD(d4,d3), MOD(d1,d5), MOD(d2,d5), MOD(d3,d5), MOD(d4,d5) FROM cs1;
|
||||
SELECT "mod_test", MOD(d1,d2), MOD(d2,d1), MOD(d1,d3), MOD(d3,d4), MOD(d4,d3) FROM cs1;
|
||||
|
||||
# floor(), ceil()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 INT UNSIGNED, d5 DOUBLE UNSIGNED, d6 DECIMAL(18,10) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678, 123456, 123456.789, 12345678.9012345678),
|
||||
(123456, 123456.789, 0.123456789, 123456, 123456.789, 1234.567),
|
||||
# Uncomment the below 2 inserts for 999... when MDEV-23032 is fixed.
|
||||
#(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 999999, 99999.999, 99999999.9999999999),
|
||||
(999999, 999999.999, 0.9999999, 999999, 999999.999, 9999.999),
|
||||
(999999, 999999.999, 0.9999999, 999999, 999998.999, 9999.999);
|
||||
#(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -999999, -99999.999, -99999999.9999999999),
|
||||
SELECT "floor_test", FLOOR(d1), FLOOR(d2), FLOOR(d3), FLOOR(d4), FLOOR(d5), FLOOR(d6) FROM cs1;
|
||||
SELECT "floor_test", d1, d4 FROM cs1 WHERE FLOOR(d1) = FLOOR(d4); # triggers predicateoperator numericCompare()
|
||||
SELECT "floor_test", d1, d4 FROM cs1 WHERE FLOOR(d1) = d4;
|
||||
SELECT "floor_test", d1, d5 FROM cs1 WHERE FLOOR(d1) = FLOOR(d5);
|
||||
SELECT "floor_test", d1, d5 FROM cs1 WHERE FLOOR(d1) = d5; # triggers Func_floor::getDoubleVal()
|
||||
SELECT "floor_test", d1, d2 FROM cs1 WHERE FLOOR(d1) = FLOOR(d2);
|
||||
|
||||
SELECT "ceil_test", CEIL(d1), CEIL(d2), CEIL(d3), CEIL(d4), CEIL(d5), CEIL(d6) FROM cs1;
|
||||
SELECT "ceil_test", d1, d4 FROM cs1 WHERE CEIL(d1) = CEIL(d4); # triggers predicateoperator numericCompare()
|
||||
SELECT "ceil_test", d1, d4 FROM cs1 WHERE CEIL(d1) = d4;
|
||||
SELECT "ceil_test", d1, d5 FROM cs1 WHERE CEIL(d1) = CEIL(d5);
|
||||
SELECT "ceil_test", d1, d5 FROM cs1 WHERE CEIL(d1) = d5; # triggers Func_floor::getDoubleVal()
|
||||
SELECT "ceil_test", d1, d2 FROM cs1 WHERE CEIL(d1) = CEIL(d2);
|
||||
|
||||
# makedate(), maketime()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 DECIMAL(20) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (31, 31, 0.31, 2019), (32, 32, 0.32, 2020), (33, 34.7, 0.345, 18);
|
||||
SELECT "makedatetime_test", MAKEDATE(d4, d1), MAKEDATE(d4, d2), MAKEDATE(d4, d3), MAKETIME(d4, d2, d1) FROM cs1;
|
||||
|
||||
# ELT()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (0, 0.1), (2, 2.1), (1, 1.7), (1, 1.2);
|
||||
SELECT "elt_test", ELT(d1, "FIRST", "SECOND"), ELT(d2, "FIRST", "SECOND") FROM cs1;
|
||||
|
||||
# least(), greatest()
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 INT UNSIGNED, d5 DOUBLE UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678, 1234, 1.23e45);
|
||||
SELECT "greatest_test", GREATEST(d1, 12345678901234567890123456789012345679) c1, GREATEST(d2, 1234567890123456789012345678.9012345679) c2,
|
||||
GREATEST(d3, 0.12345678901234567890123456789012345677) c3, GREATEST(d1, d4) c4 FROM cs1;
|
||||
SELECT "greatest_test", d2 FROM cs1 WHERE GREATEST(d2, d5) = d5; # triggers getDoubleVal()
|
||||
SELECT "least_test", LEAST(d1, 12345678901234567890123456789012345679) c1, LEAST(d2, 1234567890123456789012345678.9012345679) c2,
|
||||
LEAST(d3, 0.12345678901234567890123456789012345677) c3, LEAST(d1, d4) c4 FROM cs1;
|
||||
SELECT "least_test", d2 FROM cs1 WHERE LEAST(d2, d5) = d5; # triggers getDoubleVal()
|
||||
|
||||
# functor_bool: (not)between, (not)in, regexp, is(not)null, is(not)true, is(not)false
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38, 10) UNSIGNED, d3 DECIMAL(38, 38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(123456, 123.456, 0.123456),
|
||||
(99999999999999999999999999999999999998, 999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998),
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678),
|
||||
(0,0,0),
|
||||
(NULL, NULL, NULL);
|
||||
|
||||
SELECT "between_test", d1 BETWEEN 123455 AND 123457 f1,
|
||||
d2 BETWEEN 999999999999999999999999999.9999999997 AND 999999999999999999999999999.9999999999 f2,
|
||||
d3 BETWEEN 0.12345678901234567890123456789012345679 AND 0.12345678901234567890123456789012345677 f3 FROM cs1;
|
||||
|
||||
SELECT "notbetween_test", d1 NOT BETWEEN 123455 AND 123457 f1,
|
||||
d2 NOT BETWEEN 999999999999999999999999999.9999999997 AND 999999999999999999999999999.9999999999 f2,
|
||||
d3 NOT BETWEEN 0.12345678901234567890123456789012345679 AND 0.12345678901234567890123456789012345677 f3 FROM cs1;
|
||||
|
||||
SELECT "in_test", d1 IN (99999999999999999999999999999999999998, 12345678901234567890123456789012345678) f1,
|
||||
d2 IN (9999999999999999999999999999.9999999998, 123.456) f2,
|
||||
d3 IN (0.123456, 0.12345678901234567890123456789012345678) f3 FROM cs1;
|
||||
|
||||
SELECT "notin_test", d1 NOT IN (99999999999999999999999999999999999998, 12345678901234567890123456789012345678) f1,
|
||||
d2 NOT IN (9999999999999999999999999999.9999999998, 123.456) f2,
|
||||
d3 NOT IN (0.123456, 0.12345678901234567890123456789012345678) f3 FROM cs1;
|
||||
|
||||
SELECT "regex_test", d1 REGEXP "123", d2 REGEXP "8.9", d3 REGEXP "0.9" FROM cs1;
|
||||
|
||||
SELECT "is(not)null_test", d1 IS NULL, d1 IS NOT NULL, d2 IS NULL, d2 IS NOT NULL, d3 IS NULL, d3 IS NOT NULL FROM cs1;
|
||||
|
||||
SELECT "truthfunctions_test", d1 IS TRUE AS f1, d1 IS NOT TRUE AS f2, d1 IS FALSE AS f3, d1 IS NOT FALSE AS f4,
|
||||
d2 IS TRUE AS f5, d2 IS NOT TRUE AS f6, d2 IS FALSE AS f7, d2 IS NOT FALSE AS f8,
|
||||
d3 IS TRUE AS f9, d3 IS NOT TRUE AS f10, d3 IS FALSE AS f11, d3 IS NOT FALSE AS f12 FROM cs1;
|
||||
|
||||
# if()/coalesce()
|
||||
# for the case "select if(a, b, c)" where a=decimal(38), b=decimal(38,10), c=decimal(38,38),
|
||||
# we can have an overflow, since the resulting column can be of type decimal(M,D) where M > 38
|
||||
# which we currently do not support in ColumnStore. Same is true for coalesce.
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38, 10) UNSIGNED, d2 DECIMAL(38, 10) UNSIGNED, d3 DECIMAL(38, 10) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(0, 1234567890123456789012345678.9012345678, 1234567890123456789012345678.9012345679),
|
||||
(1234567890123456789012345678.9012345678, 0, 1234567890123456789012345678.9012345679),
|
||||
(1234567890123456789012345678.9012345678, 1234567890123456789012345678.9012345679, 0),
|
||||
(NULL, 9999999999999999999999999999.9999999999, 9999999999999999999999999999.9999999998),
|
||||
(9999999999999999999999999999.9999999999, NULL, 9999999999999999999999999999.9999999998),
|
||||
(9999999999999999999999999999.9999999999, 9999999999999999999999999999.9999999998, NULL),
|
||||
(NULL, NULL, NULL);
|
||||
|
||||
SELECT "if_test", IF(d1, d2, d3) AS f1, IF(d1, d3, d2) AS f2, IF(d2, d1, d3) AS f3, IF(d2, d3, d1) AS f4,
|
||||
IF(d3, d1, d2) AS f5, IF(d3, d2, d1) AS f6 FROM cs1;
|
||||
|
||||
SELECT "coalesce_test", COALESCE(d1, d2, d3) AS f1, COALESCE(d1, d3, d2) AS f2, COALESCE(d2, d1, d3) AS f3,
|
||||
COALESCE(d2, d3, d1) AS f4, COALESCE(d3, d1, d2) AS f5, COALESCE(d3, d2, d1) AS f6 FROM cs1;
|
||||
|
||||
# case()
|
||||
SELECT "case_test", CASE d1 WHEN 1234567890123456789012345678.9012345678 THEN d2 ELSE d3 END AS f1,
|
||||
CASE d2 WHEN 1234567890123456789012345678.9012345679 THEN d1 ELSE d3 END AS f2,
|
||||
CASE d3 WHEN d1 + 0.0000000001 THEN 9999999999999999999999999999.9999999999 ELSE -9999999999999999999999999999.9999999999 END AS f3
|
||||
FROM cs1;
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
--enable_warnings
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38, 10), d3 DECIMAL(38, 38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38, 10) UNSIGNED, d3 DECIMAL(38, 38) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES
|
||||
(NULL, NULL, NULL),
|
||||
(0,0,0),
|
||||
(-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998),
|
||||
(-12345678901234567890123456789012345678, -1234567890123456789012345678.9012345678, -0.12345678901234567890123456789012345678),
|
||||
(-123456, -123.456, -0.123456),
|
||||
(123456, 123.456, 0.123456),
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678),
|
||||
(99999999999999999999999999999999999998, 999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs2 VALUES
|
||||
(NULL, NULL, NULL),
|
||||
(0,0,0),
|
||||
(123456, 123.456, 0.123456),
|
||||
(12345678901234567890123456789012345678, 1234567890123456789012345678.9012345678, 0.12345678901234567890123456789012345678),
|
||||
(99999999999999999999999999999999999999, 999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999);
|
||||
|
||||
# ACOS(), ASIN(), ATAN()
|
||||
# signed
|
||||
SELECT "acos_test", ACOS(d1), ACOS(d2), ACOS(d3) FROM cs1;
|
||||
SELECT "asin_test", ASIN(d1), ASIN(d2), ASIN(d3) FROM cs1;
|
||||
SELECT "atan_test", ATAN(d1), ATAN(d2), ATAN(d3) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "acos_test", ACOS(d1), ACOS(d2), ACOS(d3) FROM cs2;
|
||||
SELECT "asin_test", ASIN(d1), ASIN(d2), ASIN(d3) FROM cs2;
|
||||
SELECT "atan_test", ATAN(d1), ATAN(d2), ATAN(d3) FROM cs2;
|
||||
|
||||
# SIN(), COS(), COT(), TAN()
|
||||
# signed
|
||||
# Remove the TRUNCATE() wrapper from the below once MCOL-4811 is fixed.
|
||||
SELECT "cos_test", TRUNCATE(COS(d1), 15), COS(d2), COS(d3) FROM cs1;
|
||||
SELECT "sin_test", SIN(d1), SIN(d2), SIN(d3) FROM cs1;
|
||||
SELECT "tan_test", TAN(d1), TAN(d2), TAN(d3) FROM cs1;
|
||||
# unsigned
|
||||
# Remove the TRUNCATE() wrapper from the below once MCOL-4811 is fixed.
|
||||
SELECT "cos_test", TRUNCATE(COS(d1), 15), COS(d2), COS(d3) FROM cs2;
|
||||
SELECT "sin_test", SIN(d1), SIN(d2), SIN(d3) FROM cs2;
|
||||
SELECT "tan_test", TAN(d1), TAN(d2), TAN(d3) FROM cs2;
|
||||
|
||||
# MD5(), SHA1(), SHA()
|
||||
# signed
|
||||
SELECT "md5_test", MD5(d1), MD5(d2), MD5(d3) FROM cs1;
|
||||
SELECT "sha1_test", SHA1(d1), SHA1(d2), SHA1(d3) FROM cs1;
|
||||
SELECT "sha_test", SHA(d1), SHA(d2), SHA(d3) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "md5_test", MD5(d1), MD5(d2), MD5(d3) FROM cs2;
|
||||
SELECT "sha1_test", SHA1(d1), SHA1(d2), SHA1(d3) FROM cs2;
|
||||
SELECT "sha_test", SHA(d1), SHA(d2), SHA(d3) FROM cs2;
|
||||
|
||||
# CEILING()
|
||||
# signed
|
||||
SELECT "ceiling_test", CEILING(d1), CEILING(d2), CEILING(d3) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "ceiling_test", CEILING(d1), CEILING(d2), CEILING(d3) FROM cs2;
|
||||
|
||||
# SIGN()
|
||||
# signed
|
||||
SELECT "sign_test", SIGN(d1), SIGN(d2), SIGN(d3) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "sign_test", SIGN(d1), SIGN(d2), SIGN(d3) FROM cs2;
|
||||
|
||||
# CONCAT_WS(), CONV(), CONVERT()
|
||||
# signed
|
||||
SELECT "concat_ws_test", CONCAT_WS(' = d1, d2 = ', d1, d2) FROM cs1;
|
||||
SELECT "convert_test", CONVERT(d1, SIGNED), CONVERT(d2, SIGNED), CONVERT(d3, SIGNED) FROM cs1;
|
||||
SELECT "conv_test", CONV(d1, 10, 8), CONV(d2, 10, 8), CONV(d3, 10, 8) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "concat_ws_test", CONCAT_WS(' = d2, d3 = ', d2, d3) FROM cs2;
|
||||
SELECT "convert_test", CONVERT(d1, SIGNED), CONVERT(d2, SIGNED), CONVERT(d3, SIGNED) FROM cs2;
|
||||
SELECT "conv_test", CONV(d1, 10, 8), CONV(d2, 10, 8), CONV(d3, 10, 8) FROM cs2;
|
||||
|
||||
#REVERSE(), STRCMP(), REPEAT()
|
||||
# signed
|
||||
SELECT "reverse_test", REVERSE(d1), REVERSE(d2), REVERSE(d3) FROM cs1;
|
||||
SELECT "strcmp_test", STRCMP(d1, d2), STRCMP(d2, d3), STRCMP(d3, d1), STRCMP(d1, 123456) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "reverse_test", REVERSE(d1), REVERSE(d2), REVERSE(d3) FROM cs2;
|
||||
SELECT "strcmp_test", STRCMP(d1, d2), STRCMP(d2, d3), STRCMP(d3, d1), STRCMP(d1, 123456) FROM cs2;
|
||||
SELECT "repeat_test", REPEAT(d3, 2) FROM cs2;
|
||||
|
||||
# CRC32(), DEGREES(), RADIANS()
|
||||
# signed
|
||||
SELECT "crc32_test", CRC32(d1), CRC32(d2), CRC32(d3) FROM cs1;
|
||||
SELECT "degrees_test", DEGREES(d1), DEGREES(d2), DEGREES(d3) FROM cs1;
|
||||
SELECT "radians_test", RADIANS(d1), RADIANS(d2), RADIANS(d3) FROM cs1;
|
||||
# usigned
|
||||
SELECT "crc32_test", CRC32(d1), CRC32(d2), CRC32(d3) FROM cs2;
|
||||
SELECT "degrees_test", DEGREES(d1), DEGREES(d2), DEGREES(d3) FROM cs2;
|
||||
SELECT "radians_test", RADIANS(d1), RADIANS(d2), RADIANS(d3) FROM cs2;
|
||||
|
||||
# HEX()
|
||||
# signed
|
||||
SELECT "hex_test", HEX(d1), HEX(d2), HEX(d3) FROM cs1;
|
||||
# unsigned
|
||||
SELECT "hex_test", HEX(d1), HEX(d2), HEX(d3) FROM cs2;
|
||||
|
||||
# INSERT()
|
||||
# signed
|
||||
SELECT "insert_test", INSERT(d1,6,1,d2), INSERT(d2,0,1,d3) FROM cs1;
|
||||
# usigned
|
||||
SELECT "insert_test", INSERT(d1,6,1,d2), INSERT(d2,0,1,d3) FROM cs2;
|
||||
|
||||
DROP DATABASE test_mcol641_functions;
|
230
mysql-test/columnstore/basic/t/mcol641-insert.test
Normal file
230
mysql-test/columnstore/basic/t/mcol641-insert.test
Normal file
@ -0,0 +1,230 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_insert_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_insert_db;
|
||||
USE mcol641_insert_db;
|
||||
|
||||
# Tests for inserts, as well as INSERT ... SELECT and LDI.
|
||||
SET SQL_MODE='ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38),
|
||||
d4 DECIMAL(19), d5 DECIMAL(19,10), d6 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED,
|
||||
d4 DECIMAL(19) UNSIGNED, d5 DECIMAL(19,10) UNSIGNED, d6 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
# cs3 is same as cs1, used as the destination of INSERT...SELECT
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38),
|
||||
d4 DECIMAL(19), d5 DECIMAL(19,10), d6 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
# cs4 is same as cs2, used as the destination of INSERT...SELECT
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED,
|
||||
d4 DECIMAL(19) UNSIGNED, d5 DECIMAL(19,10) UNSIGNED, d6 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
|
||||
#
|
||||
# single value inserts
|
||||
#
|
||||
# simple inserts
|
||||
INSERT INTO cs1 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125);
|
||||
INSERT INTO cs1 VALUES (-125, -1.25, -0.125, -125, -1.25, -0.125);
|
||||
INSERT INTO cs1 VALUES (1.25, 125, 125, 1.25, 125, 125);
|
||||
INSERT INTO cs1 VALUES (-1.25, -125, -125, -1.25, -125, -125);
|
||||
|
||||
# insert maximum positive and negative values
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
|
||||
# check saturation of positive and negative values
|
||||
INSERT INTO cs1 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891);
|
||||
INSERT INTO cs1 VALUES (-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
|
||||
# check rounding when scale > 0
|
||||
INSERT INTO cs1 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899);
|
||||
INSERT INTO cs1 VALUES (0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894);
|
||||
INSERT INTO cs1 VALUES (0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999);
|
||||
INSERT INTO cs1 VALUES (0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994);
|
||||
INSERT INTO cs1 VALUES (0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899);
|
||||
INSERT INTO cs1 VALUES (0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894);
|
||||
INSERT INTO cs1 VALUES (0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999);
|
||||
INSERT INTO cs1 VALUES (0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
|
||||
# insert values with leading zeros in the scale
|
||||
INSERT INTO cs1 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs1 VALUES (0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009);
|
||||
INSERT INTO cs1 VALUES (0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs1 VALUES (0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
|
||||
# insert all zeros
|
||||
INSERT INTO cs1 VALUES (0, 0, 0, 0, 0, 0);
|
||||
|
||||
# insert all nulls
|
||||
INSERT INTO cs1 VALUES (NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO cs1 VALUES ();
|
||||
SELECT "test1", d1, d2, d3, d4, d5, d6 FROM cs1;
|
||||
|
||||
#
|
||||
# multi-value inserts. repeat queries for single-value inserts
|
||||
#
|
||||
# simple inserts
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38),
|
||||
d4 DECIMAL(19), d5 DECIMAL(19,10), d6 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
INSERT INTO cs1 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125),
|
||||
(-125, -1.25, -0.125, -125, -1.25, -0.125),
|
||||
(1.25, 125, 125, 1.25, 125, 125),
|
||||
(-1.25, -125, -125, -1.25, -125, -125);
|
||||
|
||||
# insert maximum positive and negative values
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999),
|
||||
(-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998),
|
||||
(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
|
||||
# check saturation of positive and negative values
|
||||
INSERT INTO cs1 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891),
|
||||
(-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
|
||||
# check rounding when scale > 0
|
||||
INSERT INTO cs1 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899),
|
||||
(0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894),
|
||||
(0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999),
|
||||
(0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994),
|
||||
(0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899),
|
||||
(0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894),
|
||||
(0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999),
|
||||
(0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
|
||||
# insert values with leading zeros in the scale
|
||||
INSERT INTO cs1 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009),
|
||||
(0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009),
|
||||
(0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009),
|
||||
(0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
|
||||
# insert all zeros and nulls
|
||||
INSERT INTO cs1 VALUES (0, 0, 0, 0, 0, 0),
|
||||
(NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
|
||||
# insert values with digits interleaved with 0s
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789000000001, 1234567890123456789012345678.0010000008, 0.00001000000000000000000000000000000009, 1234567890120000001, 123456789.0020000009, 0.0000000070000000009),
|
||||
(-12345678901234567890123456789000000001, -1234567890123456789012345678.0010000008, -0.00001000000000000000000000000000000009, -1234567890120000001, -123456789.0020000009, -0.0000000070000000009);
|
||||
|
||||
SELECT "test2", d1, d2, d3, d4, d5, d6 FROM cs1;
|
||||
|
||||
# INSERT ... SELECT
|
||||
INSERT INTO cs3 SELECT * FROM cs1;
|
||||
SELECT "insert_select_test1", d1, d2, d3, d4, d5, d6 FROM cs3;
|
||||
|
||||
# LDI
|
||||
--exec rm -f /tmp/wide_decimal_ldi.txt
|
||||
SELECT * FROM cs3 INTO OUTFILE '/tmp/wide_decimal_ldi.txt' FIELDS TERMINATED BY ',';
|
||||
DELETE FROM cs3;
|
||||
LOAD DATA LOCAL INFILE '/tmp/wide_decimal_ldi.txt' INTO TABLE cs3 FIELDS TERMINATED BY ',';
|
||||
SELECT "ldi_test1", d1, d2, d3, d4, d5, d6 FROM cs3;
|
||||
|
||||
# unsigned case. repeat queries for signed case here
|
||||
# single value inserts
|
||||
|
||||
# simple inserts
|
||||
INSERT INTO cs2 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125);
|
||||
INSERT INTO cs2 VALUES (-125, -1.25, -0.125, -125, -1.25, -0.125);
|
||||
INSERT INTO cs2 VALUES (1.25, 125, 125, 1.25, 125, 125);
|
||||
INSERT INTO cs2 VALUES (-1.25, -125, -125, -1.25, -125, -125);
|
||||
|
||||
# insert maximum positive and negative values
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs2 values (-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs2 values (-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
|
||||
# check saturation of positive and negative values
|
||||
INSERT INTO cs2 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891);
|
||||
INSERT INTO cs2 VALUES (-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
|
||||
# check rounding when scale > 0
|
||||
INSERT INTO cs2 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899);
|
||||
INSERT INTO cs2 VALUES (0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894);
|
||||
INSERT INTO cs2 VALUES (0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999);
|
||||
INSERT INTO cs2 VALUES (0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994);
|
||||
INSERT INTO cs2 VALUES (0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899);
|
||||
INSERT INTO cs2 VALUES (0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894);
|
||||
INSERT INTO cs2 VALUES (0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999);
|
||||
INSERT INTO cs2 VALUES (0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
|
||||
# insert values with leading zeros in the scale
|
||||
INSERT INTO cs2 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs2 VALUES (0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009);
|
||||
INSERT INTO cs2 VALUES (0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs2 VALUES (0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
|
||||
# insert all zeros
|
||||
INSERT INTO cs2 VALUES (0, 0, 0, 0, 0, 0);
|
||||
|
||||
# insert all nulls
|
||||
INSERT INTO cs2 VALUES (NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
INSERT INTO cs2 VALUES ();
|
||||
SELECT "test3", d1, d2, d3, d4, d5, d6 FROM cs2;
|
||||
|
||||
# multi-value inserts. repeat queries for single-value inserts
|
||||
|
||||
# simple inserts
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED,
|
||||
d4 DECIMAL(19) UNSIGNED, d5 DECIMAL(19,10) UNSIGNED, d6 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
INSERT INTO cs2 VALUES (125, 1.25, 0.125, 125, 1.25, 0.125),
|
||||
(-125, -1.25, -0.125, -125, -1.25, -0.125),
|
||||
(1.25, 125, 125, 1.25, 125, 125),
|
||||
(-1.25, -125, -125, -1.25, -125, -125);
|
||||
|
||||
# insert maximum positive and negative values
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998, 9999999999999999998, 999999999.9999999998, 0.9999999999999999998),
|
||||
(99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999, 9999999999999999999, 999999999.9999999999, 0.9999999999999999999),
|
||||
(-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998, -9999999999999999998, -999999999.9999999998, -0.9999999999999999998),
|
||||
(-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999, -9999999999999999999, -999999999.9999999999, -0.9999999999999999999);
|
||||
|
||||
# check saturation of positive and negative values
|
||||
INSERT INTO cs2 VALUES (123456789012345678901234567890123456789, 12345678901234567890123456789.12345678912, 0.123456789012345678901234567890123456789, 12345678901234567890, 1234567890.12345678901, 0.12345678901234567891),
|
||||
(-123456789012345678901234567890123456789, -12345678901234567890123456789.12345678912, -0.123456789012345678901234567890123456789, -12345678901234567890, -1234567890.12345678901, -0.12345678901234567891);
|
||||
|
||||
# check rounding when scale > 0
|
||||
INSERT INTO cs2 VALUES (0, 1.12345678919, 0.123456789012345678901234567890123456789, 0, 1.12345678919, 0.12345678901234567899),
|
||||
(0, 1.12345678914, 0.123456789012345678901234567890123456784, 0, 1.12345678914, 0.12345678901234567894),
|
||||
(0, 1.99999999999, 0.999999999999999999999999999999999999999, 0, 1.99999999999, 0.99999999999999999999),
|
||||
(0, 1.99999999994, 0.999999999999999999999999999999999999994, 0, 1.99999999994, 0.99999999999999999994),
|
||||
(0, -1.12345678919, -0.123456789012345678901234567890123456789, 0, -1.12345678919, -0.12345678901234567899),
|
||||
(0, -1.12345678914, -0.123456789012345678901234567890123456784, 0, -1.12345678914, -0.12345678901234567894),
|
||||
(0, -1.99999999999, -0.999999999999999999999999999999999999999, 0, -1.99999999999, -0.99999999999999999999),
|
||||
(0, -1.99999999994, -0.999999999999999999999999999999999999994, 0, -1.99999999994, -0.99999999999999999994);
|
||||
|
||||
# insert values with leading zeros in the scale
|
||||
INSERT INTO cs2 VALUES (0, 1.0000000009, 0.00000000000000000000000000000000000009, 0, 1.0000000009, 0.0000000000000000009),
|
||||
(0, 1.00000000009, 0.000000000000000000000000000000000000009, 0, 1.00000000009, 0.00000000000000000009),
|
||||
(0, -1.0000000009, -0.00000000000000000000000000000000000009, 0, -1.0000000009, -0.0000000000000000009),
|
||||
(0, -1.00000000009, -0.000000000000000000000000000000000000009, 0, -1.00000000009, -0.00000000000000000009);
|
||||
|
||||
# insert all zeros and nulls
|
||||
INSERT INTO cs2 VALUES (0, 0, 0, 0, 0, 0),
|
||||
(NULL, NULL, NULL, NULL, NULL, NULL);
|
||||
|
||||
# insert values with digits interleaved with 0s
|
||||
INSERT INTO cs2 VALUES (12345678901234567890123456789000000001, 1234567890123456789012345678.0010000008, 0.00001000000000000000000000000000000009, 1234567890120000001, 123456789.0020000009, 0.0000000070000000009),
|
||||
(-12345678901234567890123456789000000001, -1234567890123456789012345678.0010000008, -0.00001000000000000000000000000000000009, -1234567890120000001, -123456789.0020000009, -0.0000000070000000009);
|
||||
|
||||
SELECT "test4", d1, d2, d3, d4, d5, d6 FROM cs2;
|
||||
|
||||
# INSERT ... SELECT
|
||||
INSERT INTO cs4 SELECT * FROM cs2;
|
||||
SELECT "insert_select_test2", d1, d2, d3, d4, d5, d6 FROM cs4;
|
||||
|
||||
# LDI
|
||||
--exec rm -f /tmp/wide_decimal_ldi.txt
|
||||
SELECT * FROM cs4 INTO OUTFILE '/tmp/wide_decimal_ldi.txt' FIELDS TERMINATED BY ',';
|
||||
DELETE FROM cs4;
|
||||
LOAD DATA LOCAL INFILE '/tmp/wide_decimal_ldi.txt' INTO TABLE cs4 FIELDS TERMINATED BY ',';
|
||||
SELECT "ldi_test2", d1, d2, d3, d4, d5, d6 FROM cs4;
|
||||
|
||||
# Clean UP
|
||||
SET SQL_MODE=default;
|
||||
--exec rm -f /tmp/wide_decimal_ldi.txt
|
||||
DROP DATABASE mcol641_insert_db;
|
45
mysql-test/columnstore/basic/t/mcol641-joins.test
Normal file
45
mysql-test/columnstore/basic/t/mcol641-joins.test
Normal file
@ -0,0 +1,45 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_joins_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_joins_db;
|
||||
USE mcol641_joins_db;
|
||||
|
||||
--disable_query_log
|
||||
SET default_storage_engine=ColumnStore;
|
||||
--enable_query_log
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (de1 DECIMAL(38,38), de2 DECIMAL(38,10)) ENGINE=columnstore;
|
||||
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs1 VALUES (12345678901234567890123456789012345678, 1234567890123456789012345678.1234567890, 0.12345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (-12345678901234567890123456789012345678, -1234567890123456789012345678.1234567890, -0.12345678901234567890123456789012345678);
|
||||
INSERT INTO cs1 VALUES (0, 1.1234567891, 0.1234567890123456789012345678912345);
|
||||
|
||||
INSERT INTO cs2 values (0.99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998);
|
||||
INSERT INTO cs2 VALUES (0.12345678901234567890123456789012345678, 1234567890123456789012345678.0123456789);
|
||||
INSERT INTO cs2 VALUES (-0.12345678901234567890123456789012345678, -1234567890123456789012345678.0123456789);
|
||||
INSERT INTO cs2 VALUES (0.12345678901234567890123456789, 1.1234567891);
|
||||
|
||||
SELECT cs1.d1, cs1.d2, cs2.de1 FROM cs1 INNER JOIN cs2 ON cs1.d2 = cs2.de2 ORDER BY 1;
|
||||
SELECT cs2.de1, cs1.d1, cs1.d2 FROM cs1 INNER JOIN cs2 ON cs1.d3 = cs2.de1 ORDER BY 1;
|
||||
|
||||
SELECT cs2.de2, cs1.d1, cs1.d3, cs2.de1 FROM cs1 LEFT JOIN cs2 ON cs1.d2 = cs2.de2 ORDER BY 2;
|
||||
SELECT cs1.d3, cs1.d1, cs1.d2, cs2.de2 FROM cs1 LEFT JOIN cs2 ON cs1.d3 = cs2.de1 ORDER BY 1;
|
||||
|
||||
SELECT cs1.d1, cs1.d3, cs2.de1, cs2.de2 FROM cs1 RIGHT JOIN cs2 ON cs1.d2 = cs2.de2 ORDER BY 3;
|
||||
SELECT cs2.de1, cs2.de2, cs1.d1, cs1.d2 FROM cs1 RIGHT JOIN cs2 ON cs1.d3 = cs2.de1 ORDER BY 1;
|
||||
|
||||
SELECT * FROM cs1 WHERE cs1.d2 IN (SELECT cs2.de2 FROM cs2 WHERE cs2.de2 = cs1.d2) ORDER BY 1;
|
||||
SELECT * FROM cs2 WHERE cs2.de2 IN (SELECT cs1.d2 FROM cs1 WHERE cs1.d2 = cs2.de2) ORDER BY 1;
|
||||
SELECT * FROM cs1 WHERE cs1.d3 IN (SELECT cs2.de1 FROM cs2 WHERE cs2.de1 = cs1.d3) ORDER BY 1;
|
||||
SELECT * FROM cs2 WHERE cs2.de1 IN (SELECT cs1.d3 FROM cs1 WHERE cs1.d3 = cs2.de1) ORDER BY 1;
|
||||
|
||||
SELECT count(*) FROM cs1 where exists (SELECT cs2.de2 FROM cs2 WHERE cs1.d2=cs2.de2);
|
||||
SELECT count(*) FROM cs2 where not exists (SELECT cs1.d2 FROM cs1 WHERE cs1.d2=cs2.de2);
|
||||
|
||||
# Clean UP
|
||||
DROP DATABASE mcol641_joins_db;
|
328
mysql-test/columnstore/basic/t/mcol641-skewed-joins.test
Normal file
328
mysql-test/columnstore/basic/t/mcol641-skewed-joins.test
Normal file
@ -0,0 +1,328 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
-- source ../include/enable_ordered_only.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_joins_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_joins_db;
|
||||
USE mcol641_joins_db;
|
||||
|
||||
--disable_query_log
|
||||
SET default_storage_engine=ColumnStore;
|
||||
--enable_query_log
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(37), id TINYINT);
|
||||
CREATE TABLE cs2 (i1 SMALLINT, i2 MEDIUMINT, i3 INT, i4 BIGINT);
|
||||
|
||||
INSERT INTO cs1 VALUES
|
||||
(99,0,1),
|
||||
(255,254,2),
|
||||
(254,253,3),
|
||||
(252,253,4),
|
||||
(65535,2147483647,5),
|
||||
(65534,2147483646,6),
|
||||
(65533,65532,7),
|
||||
(2147483647,2147483636,8),
|
||||
(2147483646,2147483635,9),
|
||||
(2147483645,2147483634,10),
|
||||
(2147483645,9223372036854775804,11),
|
||||
(9223372036854775807,0,12),
|
||||
(9223372036854775807,2147483627,13),
|
||||
(9223372036854775806,2147483626,14),
|
||||
(9223372036854775805,9223372036854775704,15);
|
||||
|
||||
INSERT INTO cs2 VALUES
|
||||
(255,254,NULL,NULL),
|
||||
(254,253,NULL,NULL),
|
||||
(251,251,NULL,NULL),
|
||||
(NULL,65535,NULL,NULL),
|
||||
(NULL,65535,2147483647,NULL),
|
||||
(NULL,65534,2147483646,NULL),
|
||||
(NULL,0,2147483641,NULL),
|
||||
(NULL,NULL,2147483647,NULL),
|
||||
(NULL,NULL,2147483647,2147483636),
|
||||
(NULL,NULL,2147483646,2147483635),
|
||||
(NULL,NULL,0,2147483641),
|
||||
(NULL,NULL,NULL,9223372036854775807),
|
||||
(NULL,NULL,2147483627,9223372036854775807),
|
||||
(NULL,NULL,2147483626,9223372036854775806),
|
||||
(NULL,NULL,0,1);
|
||||
|
||||
# Distributed PrimProc-based JOINs
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i2 ORDER BY id,i3;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i2 ORDER BY id,i3;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i3 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i3 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i4 AND cs2.i3 IS NOT NULL ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i4 AND cs2.i3 IS NOT NULL ORDER BY id;
|
||||
|
||||
# PrimProc-based composite key JOINs
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i1 AND cs1.d2 = cs2.i2 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i1 AND cs1.d2 = cs2.i2 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i2 AND cs1.d2 = cs2.i3 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i2 AND cs1.d2 = cs2.i3 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i3 AND cs1.d2 = cs2.i4 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i3 AND cs1.d2 = cs2.i4 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1 = cs2.i4 AND cs1.d2 = cs2.i3 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1 = cs2.i4 AND cs1.d2 = cs2.i3 ORDER BY id;
|
||||
|
||||
# ExeMgr-based JOINs
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i1 ORDER BY id,i2;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i1 ORDER BY id,i2;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i2 ORDER BY id,i3;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i2 ORDER BY id,i3;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i3 ORDER BY id,i2,i4;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i3 ORDER BY id,i2,i4;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i4 AND s2.i3 IS NOT NULL ORDER BY id,i3;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i4 AND s2.i3 IS NOT NULL ORDER BY id,i3;
|
||||
|
||||
# Functional JOIN
|
||||
# Distributed PrimProc-based functional JOINs
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1 = cs2.i1-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1 = cs2.i1-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1 = cs2.i2-1 ORDER BY id,i3;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1 = cs2.i2-1 ORDER BY id,i3;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1 = cs2.i3-1 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1 = cs2.i3-1 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1 = cs2.i4-1 AND cs2.i3 IS NOT NULL ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1 = cs2.i4-1 AND cs2.i3 IS NOT NULL ORDER BY id;
|
||||
|
||||
# PrimProc-based composite key JOINs
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1= cs2.i1-1 AND cs1.d2-1= cs2.i2-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1= cs2.i1-1 AND cs1.d2-1= cs2.i2-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1= cs2.i2-1 AND cs1.d2-1= cs2.i3-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1= cs2.i2-1 AND cs1.d2-1= cs2.i3-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1= cs2.i3-1 AND cs1.d2-1= cs2.i4-1 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1= cs2.i3-1 AND cs1.d2-1= cs2.i4-1 ORDER BY id,i2,i4;
|
||||
SELECT cs1.*, cs2.* FROM cs1 INNER JOIN cs2 ON cs1.d1-1= cs2.i4-1 AND cs1.d2-1= cs2.i3-1 ORDER BY id;
|
||||
SELECT cs1.*, cs2.* FROM cs2 INNER JOIN cs1 ON cs1.d1-1= cs2.i4-1 AND cs1.d2-1= cs2.i3-1 ORDER BY id;
|
||||
|
||||
# ExeMgr-based JOINs
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i1-1 ORDER BY id,i2;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i1-1 ORDER BY id,i2;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i2-1 ORDER BY id,i3;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i2-1 ORDER BY id,i3;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i3-1 ORDER BY id,i2,i4;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i3-1 ORDER BY id,i2,i4;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 INNER JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i4-1 AND s2.i3 IS NOT NULL ORDER BY id,i3;
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 INNER JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i4-1 AND s2.i3 IS NOT NULL ORDER BY id,i3;
|
||||
|
||||
-- source ../include/disable_ordered_only.inc
|
||||
|
||||
# Skewed OUTER JOIN
|
||||
TRUNCATE cs1;
|
||||
TRUNCATE cs2;
|
||||
|
||||
INSERT INTO cs1 VALUES
|
||||
(99,0,1),
|
||||
(255,254,2),
|
||||
(254,253,3),
|
||||
(252,253,4),
|
||||
(-252,253,5),
|
||||
(65535,2147483647,5),
|
||||
(65534,2147483646,6),
|
||||
(65533,65532,7),
|
||||
(2147483647,2147483636,8),
|
||||
(2147483646,2147483635,9),
|
||||
(2147483645,2147483634,10),
|
||||
(2147483645,9223372036854775804,11),
|
||||
(9223372036854775807,0,12),
|
||||
(9223372036854775807,2147483627,13),
|
||||
(9223372036854775806,2147483626,14),
|
||||
(9223372036854775805,9223372036854775704,15);
|
||||
|
||||
INSERT INTO cs2 VALUES
|
||||
(255,254,NULL,NULL),
|
||||
(254,253,NULL,NULL),
|
||||
(251,251,NULL,NULL),
|
||||
(-252,253,NULL,NULL),
|
||||
(-250,253,NULL,NULL),
|
||||
(NULL,65535,NULL,NULL),
|
||||
(NULL,65535,2147483647,NULL),
|
||||
(NULL,65534,2147483646,NULL),
|
||||
(NULL,0,2147483641,NULL),
|
||||
(NULL,NULL,2147483647,NULL),
|
||||
(NULL,NULL,2147483647,2147483636),
|
||||
(NULL,NULL,2147483646,2147483635),
|
||||
(NULL,NULL,0,2147483641),
|
||||
(NULL,NULL,NULL,9223372036854775807),
|
||||
(NULL,NULL,2147483627,9223372036854775807),
|
||||
(NULL,NULL,2147483626,9223372036854775806),
|
||||
(NULL,NULL,0,1);
|
||||
|
||||
# Distributed PrimProc-based JOINs
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i2 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i2 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i3 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i3 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i4 AND cs2.i3 IS NOT NULL ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i4 AND cs2.i3 IS NOT NULL ;
|
||||
|
||||
# PrimProc-based composite key JOINs
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i1 AND cs1.d2 = cs2.i2 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i1 AND cs1.d2 = cs2.i2 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i2 AND cs1.d2 = cs2.i3 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i2 AND cs1.d2 = cs2.i3 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i3 AND cs1.d2 = cs2.i4 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i3 AND cs1.d2 = cs2.i4 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1 = cs2.i4 AND cs1.d2 = cs2.i3 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1 = cs2.i4 AND cs1.d2 = cs2.i3 ;
|
||||
|
||||
# ExeMgr-based JOINs
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i2 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i2 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i3 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i3 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1=s2.i4 AND s2.i3 IS NOT NULL ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1=s2.i4 AND s2.i3 IS NOT NULL ;
|
||||
|
||||
# Functional JOIN
|
||||
# Distributed PrimProc-based functional JOINs
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1 = cs2.i1-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1 = cs2.i1-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1 = cs2.i2-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1 = cs2.i2-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1 = cs2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1 = cs2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1 = cs2.i4-1 AND cs2.i3 IS NOT NULL ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1 = cs2.i4-1 AND cs2.i3 IS NOT NULL ;
|
||||
|
||||
# PrimProc-based composite key JOINs
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1= cs2.i1-1 AND cs1.d2-1= cs2.i2-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1= cs2.i1-1 AND cs1.d2-1= cs2.i2-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1= cs2.i2-1 AND cs1.d2-1= cs2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1= cs2.i2-1 AND cs1.d2-1= cs2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1= cs2.i3-1 AND cs1.d2-1= cs2.i4-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1= cs2.i3-1 AND cs1.d2-1= cs2.i4-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs1 LEFT JOIN cs2 ON cs1.d1-1= cs2.i4-1 AND cs1.d2-1= cs2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT cs1.*, cs2.* FROM cs2 LEFT JOIN cs1 ON cs1.d1-1= cs2.i4-1 AND cs1.d2-1= cs2.i3-1 ;
|
||||
|
||||
# ExeMgr-based JOINs
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i1-1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i1-1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i2-1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i2-1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i3-1 ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs1)s1 LEFT JOIN (SELECT * FROM cs2)s2 ON s1.d1-1=s2.i4-1 AND s2.i3 IS NOT NULL ;
|
||||
--sorted_result
|
||||
SELECT s1.*,s2.* FROM (SELECT * FROM cs2)s2 LEFT JOIN (SELECT * FROM cs1)s1 ON s1.d1-1=s2.i4-1 AND s2.i3 IS NOT NULL ;
|
||||
|
||||
# Misc skewed JOIN
|
||||
|
||||
CREATE TABLE t1 (a DECIMAL(10,1), b DECIMAL(20,1));
|
||||
INSERT INTO t1 VALUES (10.1,20.1);
|
||||
CREATE TABLE t2 (a DECIMAL(20,1), b DECIMAL(10,1));
|
||||
INSERT INTO t2 VALUES (10.1,20.1);
|
||||
SELECT * FROM t1,t2 WHERE t1.a=t2.a AND t1.b=t2.b;
|
||||
|
||||
DROP TABLE t1,t2;
|
||||
CREATE TABLE t1 (a CHAR(10), b DECIMAL(10,1));
|
||||
INSERT INTO t1 VALUES (10.1,20.1);
|
||||
CREATE TABLE t2 (a CHAR(10), b DECIMAL(20,1));
|
||||
INSERT INTO t2 VALUES (10.1,20.1);
|
||||
SELECT * FROM t1,t2 WHERE t1.a=t2.a AND t1.b=t2.b;
|
||||
SELECT * FROM t2,t1 WHERE t1.a=t2.a AND t1.b=t2.b;
|
||||
|
||||
DROP TABLE t1,t2;
|
||||
CREATE TABLE t1 (a DECIMAL(10,1), b CHAR(10));
|
||||
INSERT INTO t1 VALUES (10.1,20.1);
|
||||
CREATE TABLE t2 (a DECIMAL(20,1), b CHAR(10));
|
||||
INSERT INTO t2 VALUES (10.1,20.1);
|
||||
SELECT * FROM t1,t2 WHERE t1.a=t2.a AND t1.b=t2.b;
|
||||
SELECT * FROM t2,t1 WHERE t1.a=t2.a AND t1.b=t2.b;
|
||||
|
||||
SELECT * FROM t2,t1 WHERE (t1.a,t1.b)=(t2.a,t2.b);
|
||||
SELECT * FROM t1,t2 WHERE (t1.a,t1.b)=(t2.a,t2.b);
|
||||
|
||||
SELECT * FROM t1 JOIN t2 USING (a,b);
|
||||
SELECT * FROM t2 JOIN t1 USING (a,b);
|
||||
|
||||
# Testing the max number of skewed columns in a join.
|
||||
DROP TABLE t1,t2;
|
||||
CREATE TABLE t1 (a DECIMAL(10,1), b DECIMAL(20,1),a1 DECIMAL(10,1), b1 DECIMAL(20,1),a2 DECIMAL(10,1), b2 DECIMAL(20,1),a3 DECIMAL(10,1), b3 DECIMAL(20,1),a4 DECIMAL(10,1), b4 DECIMAL(20,1),a5 DECIMAL(10,1));
|
||||
INSERT INTO t1 VALUES (10.1,20.1,10.1,20.1,10.1,20.1,10.1,20.1,10.1,20.1,10.1);
|
||||
CREATE TABLE t2 (a DECIMAL(20,1), b DECIMAL(10,1),a1 DECIMAL(20,1), b1 DECIMAL(10,1),a2 DECIMAL(20,1), b2 DECIMAL(10,1),a3 DECIMAL(20,1), b3 DECIMAL(10,1),a4 DECIMAL(20,1), b4 DECIMAL(10,1),a5 DECIMAL(20,1));
|
||||
INSERT INTO t2 VALUES (10.1,20.1,10.1,20.1,10.1,20.1,10.1,20.1,10.1,20.1,10.1);
|
||||
# These work b/c the max is 10 columns.
|
||||
SELECT * FROM t1 INNER JOIN t2 USING(a,b,a1,b1,a2,b2,a3,b3,a4);
|
||||
SELECT * FROM t2 INNER JOIN t1 USING(a,b,a1,b1,a2,b2,a3,b3,a4);
|
||||
# These do not.
|
||||
#SELECT * FROM t1 INNER JOIN t2 USING(a,b,a1,b1,a2,b2,a3,b3,a4,b4,a5);
|
||||
#SELECT * FROM t1 INNER JOIN t2 USING(a,b,a1,b1,a2,b2,a3,b3,a4,b4,a5);
|
||||
|
||||
# Mixing skewed columns with non-skewed.
|
||||
DROP TABLE t1,t2;
|
||||
CREATE TABLE t1 (a DECIMAL(10,1), t text, b DECIMAL(20,1), i1 int, a1 DECIMAL(10,1), b1 DECIMAL(20,1),a2 DECIMAL(10,1), b2 DECIMAL(20,1),a3 DECIMAL(10,1), b3 DECIMAL(20,1),a4 DECIMAL(10,1), b4 DECIMAL(20,1),a5 DECIMAL(10,1));
|
||||
INSERT INTO t1 VALUES (10.1,'some',20.1,42,10.1,20.1,10.1,20.1,10.1,20.1,10.1,20.1,10.1);
|
||||
CREATE TABLE t2 (a DECIMAL(20,1), b DECIMAL(10,1), t text, a1 DECIMAL(20,1), i1 int, b1 DECIMAL(10,1),a2 DECIMAL(20,1), b2 DECIMAL(10,1),a3 DECIMAL(20,1), b3 DECIMAL(10,1),a4 DECIMAL(20,1), b4 DECIMAL(10,1),a5 DECIMAL(20,1));
|
||||
INSERT INTO t2 VALUES (10.1,20.1,'some',10.1,42,20.1,10.1,20.1,10.1,20.1,10.1,20.1,10.1);
|
||||
|
||||
# These work b/c the max is 10 columns.
|
||||
SELECT * FROM t1 INNER JOIN t2 USING(a,b,a1,b1,a2,b2,a3,b3,a4,b4,t,i1);
|
||||
SELECT * FROM t2 INNER JOIN t1 USING(a,b,a1,b1,a2,b2,a3,b3,a4,b4,t,i1);
|
||||
# These do not.
|
||||
#SELECT * FROM t1 INNER JOIN t2 USING(a,b,a1,b1,a2,b2,a3,b3,a4,b4,a5,t,i1);
|
||||
#SELECT * FROM t2 INNER JOIN t1 USING(a,b,a1,b1,a2,b2,a3,b3,a4,b4,a5,t,i1);
|
||||
|
||||
SELECT t1.a,t1.t,t1.i1 FROM t1 INNER JOIN (SELECT * from t2) s1 USING(a,b);
|
||||
SELECT t2.a,t2.t,s1.i1 FROM t2 INNER JOIN (SELECT * from t1) s1 USING(a,b);
|
||||
SELECT t1.a,t1.t,t1.i1 FROM t1 INNER JOIN (SELECT * from t2) s1 where t1.a+1=s1.a+1 and t1.b+1=s1.b+1;
|
||||
SELECT t2.a,t2.t,t2.i1 FROM t2 INNER JOIN (SELECT * from t1) s1 where t2.a+1=s1.a+1 and t2.b+1=s1.b+1;
|
||||
|
||||
# Clean UP
|
||||
DROP DATABASE mcol641_joins_db;
|
90
mysql-test/columnstore/basic/t/mcol641-sorting.test
Normal file
90
mysql-test/columnstore/basic/t/mcol641-sorting.test
Normal file
@ -0,0 +1,90 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_sorting_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_sorting_db;
|
||||
USE mcol641_sorting_db;
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38), d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED, d4 DECIMAL(38),d5 DECIMAL(38),i1 INT) ENGINE=columnstore;
|
||||
|
||||
INSERT INTO cs1 VALUES
|
||||
(1234,5678,-0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,-5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(-123456789123456789,-5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,-0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
|
||||
INSERT INTO cs2 VALUES
|
||||
(1234,5678,0.12345678901234567890123456789018,2,1,1),
|
||||
(1234,5678,0.1234567890123456789012345,2,1,1),
|
||||
(12345678901234567890123,1234567890123456789012.9012345678,0.123456789012345678901234567890,2,1,1),
|
||||
(NULL,NULL,NULL,2,1,1),
|
||||
(0,0,0,2,1,1),
|
||||
(1234,5678,0.1234567890123456783456789012345678,3,2,2),
|
||||
(123456789123456789,5678,0.123456789012345673456789012345678,3,2,2),
|
||||
(12345678901234567890901,1234567890123478901234.9012345678,0.1234567890123456789012345678908,3,2,2),
|
||||
(NULL,NULL,NULL,3,2,2),
|
||||
(0,0,0,3,2,2),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111111,1,1),
|
||||
(1234,5678,0.12345678901234567890123456789018,11111111111111111111111111111112,1,1);
|
||||
|
||||
# ORDER BY
|
||||
SELECT 't1_q1',d1,d5 FROM cs1 ORDER BY d1,d5;
|
||||
SELECT 't1_q2',d2,d5 FROM cs1 ORDER BY d2,d5;
|
||||
SELECT 't1_q3',d3,d5 FROM cs1 ORDER BY d3,d5;
|
||||
|
||||
# LIMIT
|
||||
SELECT 't2_q1',d1,d5 FROM cs1 ORDER BY d1,d5 LIMIT 1 OFFSET 2;
|
||||
SELECT 't2_q2',d2,d5 FROM cs1 ORDER BY d2,d5 LIMIT 1 OFFSET 2;
|
||||
SELECT 't2_q3',d3,d5 FROM cs1 ORDER BY d3,d5 LIMIT 1 OFFSET 2;
|
||||
|
||||
# DISTINCT
|
||||
SELECT DISTINCT 't3_q1',d1,d5 FROM cs1 ORDER BY d1,d5;
|
||||
SELECT DISTINCT 't3_q2',d2,d5 FROM cs1 ORDER BY d2,d5;
|
||||
SELECT DISTINCT 't3_q3',d3,d5 FROM cs1 ORDER BY d3,d5;
|
||||
|
||||
# ORDER BY
|
||||
SELECT 't4_q1',d1,d5 FROM cs1 ORDER BY d1,d5 ASC;
|
||||
SELECT 't4_q2',d2,d5 FROM cs1 ORDER BY d2,d5 ASC;
|
||||
SELECT 't4_q3',d3,d5 FROM cs1 ORDER BY d3,d5 ASC;
|
||||
SELECT 't4_q1',d1,d5 FROM cs1 ORDER BY d1,d5 DESC;
|
||||
SELECT 't4_q2',d2,d5 FROM cs1 ORDER BY d2,d5 DESC;
|
||||
SELECT 't4_q3',d3,d5 FROM cs1 ORDER BY d3,d5 DESC;
|
||||
|
||||
# ORDER BY
|
||||
SELECT 't5_q1',d1,d5 FROM cs2 ORDER BY d1,d5;
|
||||
SELECT 't5_q2',d2,d5 FROM cs2 ORDER BY d2,d5;
|
||||
SELECT 't5_q3',d3,d5 FROM cs2 ORDER BY d3,d5;
|
||||
|
||||
# LIMIT
|
||||
SELECT 't6_q1',d1,d5 FROM cs2 ORDER BY d1,d5 LIMIT 1 OFFSET 2;
|
||||
SELECT 't6_q2',d2,d5 FROM cs2 ORDER BY d2,d5 LIMIT 1 OFFSET 2;
|
||||
SELECT 't6_q3',d3,d5 FROM cs2 ORDER BY d3,d5 LIMIT 1 OFFSET 2;
|
||||
|
||||
# DISTINCT
|
||||
SELECT DISTINCT 't7_q1',d1,d5 FROM cs2 ORDER BY d1,d5;
|
||||
SELECT DISTINCT 't7_q2',d2,d5 FROM cs2 ORDER BY d2,d5;
|
||||
SELECT DISTINCT 't7_q3',d3,d5 FROM cs2 ORDER BY d3,d5;
|
||||
|
||||
# ORDER BY
|
||||
SELECT 't8_q1',d1,d5 FROM cs2 ORDER BY d1,d5 ASC;
|
||||
SELECT 't8_q2',d2,d5 FROM cs2 ORDER BY d2,d5 ASC;
|
||||
SELECT 't8_q3',d3,d5 FROM cs2 ORDER BY d3,d5 ASC;
|
||||
SELECT 't8_q1',d1,d5 FROM cs2 ORDER BY d1,d5 DESC;
|
||||
SELECT 't8_q2',d2,d5 FROM cs2 ORDER BY d2,d5 DESC;
|
||||
SELECT 't8_q3',d3,d5 FROM cs2 ORDER BY d3,d5 DESC;
|
||||
|
||||
# Clean UP
|
||||
DROP DATABASE mcol641_sorting_db;
|
35
mysql-test/columnstore/basic/t/mcol641-union.test
Normal file
35
mysql-test/columnstore/basic/t/mcol641-union.test
Normal file
@ -0,0 +1,35 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_union_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_union_db;
|
||||
USE mcol641_union_db;
|
||||
|
||||
SET SQL_MODE='ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(38,10), d3 DECIMAL(38,38)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(38,10) UNSIGNED, d3 DECIMAL(38,38) UNSIGNED) ENGINE=columnstore;
|
||||
|
||||
INSERT INTO cs1 VALUES (125, 1.25, 0.125);
|
||||
INSERT INTO cs1 VALUES (-125, -1.25, -0.125);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999999999999999.9999999998, -0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999999999999.9999999999, -0.99999999999999999999999999999999999999);
|
||||
|
||||
SELECT d1, d1, d2 FROM cs1 UNION SELECT d2, d3, d3 FROM cs1;
|
||||
SELECT d2, d3, d3 FROM cs1 UNION SELECT d1, d1, d2 FROM cs1;
|
||||
SELECT d1, d2, d3 FROM cs1 UNION SELECT d1, d2, d3 FROM cs1;
|
||||
|
||||
INSERT INTO cs2 VALUES (125, 1.25, 0.125);
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999998, 9999999999999999999999999999.9999999998, 0.99999999999999999999999999999999999998);
|
||||
INSERT INTO cs2 values (99999999999999999999999999999999999999, 9999999999999999999999999999.9999999999, 0.99999999999999999999999999999999999999);
|
||||
|
||||
SELECT d1, d1, d2 FROM cs2 UNION SELECT d2, d3, d3 FROM cs2;
|
||||
SELECT d2, d3, d3 FROM cs2 UNION SELECT d1, d1, d2 FROM cs2;
|
||||
SELECT d1, d2, d3 FROM cs2 UNION SELECT d1, d2, d3 FROM cs2;
|
||||
|
||||
# Clean UP
|
||||
DROP DATABASE mcol641_union_db;
|
357
mysql-test/columnstore/basic/t/mcol641-update.test
Normal file
357
mysql-test/columnstore/basic/t/mcol641-update.test
Normal file
@ -0,0 +1,357 @@
|
||||
-- source ../include/have_columnstore.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS mcol641_update_db;
|
||||
--enable_warnings
|
||||
|
||||
CREATE DATABASE mcol641_update_db;
|
||||
USE mcol641_update_db;
|
||||
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
|
||||
DELIMITER //;
|
||||
|
||||
CREATE PROCEDURE signedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs1 VALUES (125, 125);
|
||||
INSERT INTO cs1 VALUES (-125, -125);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs1 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999998, -9999999999999999998);
|
||||
INSERT INTO cs1 values (-99999999999999999999999999999999999999, -9999999999999999999);
|
||||
INSERT INTO cs1 VALUES (0, 0);
|
||||
INSERT INTO cs1 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs2 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs2 VALUES (-1.25, -1.25);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs2 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999998, -999999999.9999999998);
|
||||
INSERT INTO cs2 values (-9999999999999999999999999999.9999999999, -999999999.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs2 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs2 VALUES (-1.1234567891, -1.1234567891);
|
||||
INSERT INTO cs2 VALUES (-1.9999999999, -1.9999999999);
|
||||
INSERT INTO cs2 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs2 VALUES (-1.0000000009, -1.0000000009);
|
||||
INSERT INTO cs2 VALUES (0, 0);
|
||||
INSERT INTO cs2 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs3 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs3 VALUES (-0.125, -0.125);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs3 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999998, -0.9999999999999999998);
|
||||
INSERT INTO cs3 values (-0.99999999999999999999999999999999999999, -0.9999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (-0.12345678901234567890123456789012345678, -0.1234567890123456789);
|
||||
INSERT INTO cs3 VALUES (-0.19999999999999999999999999999999999999, -0.1999999999999999999);
|
||||
INSERT INTO cs3 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (-0.00000000000000000000000000000000000009, -0.0000000000000000009);
|
||||
INSERT INTO cs3 VALUES (0, 0);
|
||||
INSERT INTO cs3 VALUES (NULL, NULL);
|
||||
END//
|
||||
|
||||
CREATE PROCEDURE unsignedinsertproc ()
|
||||
BEGIN
|
||||
INSERT INTO cs4 VALUES (125, 125);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999998, 9999999999999999998);
|
||||
INSERT INTO cs4 values (99999999999999999999999999999999999999, 9999999999999999999);
|
||||
INSERT INTO cs4 VALUES (0, 0);
|
||||
INSERT INTO cs4 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs5 VALUES (1.25, 1.25);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999998, 999999999.9999999998);
|
||||
INSERT INTO cs5 values (9999999999999999999999999999.9999999999, 999999999.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.1234567891, 1.1234567891);
|
||||
INSERT INTO cs5 VALUES (1.9999999999, 1.9999999999);
|
||||
INSERT INTO cs5 VALUES (1.0000000009, 1.0000000009);
|
||||
INSERT INTO cs5 VALUES (0, 0);
|
||||
INSERT INTO cs5 VALUES (NULL, NULL);
|
||||
|
||||
INSERT INTO cs6 VALUES (0.125, 0.125);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999998, 0.9999999999999999998);
|
||||
INSERT INTO cs6 values (0.99999999999999999999999999999999999999, 0.9999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.12345678901234567890123456789012345678, 0.1234567890123456789);
|
||||
INSERT INTO cs6 VALUES (0.19999999999999999999999999999999999999, 0.1999999999999999999);
|
||||
INSERT INTO cs6 VALUES (0.00000000000000000000000000000000000009, 0.0000000000000000009);
|
||||
INSERT INTO cs6 VALUES (0, 0);
|
||||
INSERT INTO cs6 VALUES (NULL, NULL);
|
||||
END//
|
||||
|
||||
CREATE PROCEDURE signeddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs1;
|
||||
DELETE FROM cs2;
|
||||
DELETE FROM cs3;
|
||||
END//
|
||||
|
||||
CREATE PROCEDURE unsigneddeleteproc ()
|
||||
BEGIN
|
||||
DELETE FROM cs4;
|
||||
DELETE FROM cs5;
|
||||
DELETE FROM cs6;
|
||||
END//
|
||||
|
||||
DELIMITER ;//
|
||||
|
||||
DROP TABLE IF EXISTS cs1;
|
||||
DROP TABLE IF EXISTS cs2;
|
||||
DROP TABLE IF EXISTS cs3;
|
||||
DROP TABLE IF EXISTS cs4;
|
||||
DROP TABLE IF EXISTS cs5;
|
||||
DROP TABLE IF EXISTS cs6;
|
||||
|
||||
CREATE TABLE cs1 (d1 DECIMAL(38), d2 DECIMAL(19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs2 (d1 DECIMAL(38,10), d2 DECIMAL(19,10)) ENGINE=columnstore;
|
||||
CREATE TABLE cs3 (d1 DECIMAL(38,38), d2 DECIMAL(19,19)) ENGINE=columnstore;
|
||||
CREATE TABLE cs4 (d1 DECIMAL(38) UNSIGNED, d2 DECIMAL(19) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs5 (d1 DECIMAL(38,10) UNSIGNED, d2 DECIMAL(19,10) UNSIGNED) ENGINE=columnstore;
|
||||
CREATE TABLE cs6 (d1 DECIMAL(38,38) UNSIGNED, d2 DECIMAL(19,19) UNSIGNED) ENGINE=columnstore;
|
||||
|
||||
CALL signedinsertproc();
|
||||
|
||||
# Updates with constant values without a WHERE clause
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789;
|
||||
SELECT "signedtest1", d1, d2 FROM cs1;
|
||||
SELECT "signedtest1", d1, d2 FROM cs2;
|
||||
SELECT "signedtest1", d1, d2 FROM cs3;
|
||||
|
||||
# Updates with WHERE clause
|
||||
# Update a single row with a constant value in WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=0 WHERE d1=-99999999999999999999999999999999999998;
|
||||
UPDATE cs1 SET d1=0, d2=123456789012345678 WHERE d2=9999999999999999999;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=0 WHERE d1=-9999999999999999999999999999.9999999998;
|
||||
UPDATE cs2 SET d1=0, d2=123456789.012345678 WHERE d2=999999999.9999999999;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0 WHERE d1=-0.99999999999999999999999999999999999998;
|
||||
UPDATE cs3 SET d1=0, d2=0.123456789012345678 WHERE d2=0.9999999999999999999;
|
||||
SELECT "signedtest2", d1, d2 FROM cs1;
|
||||
SELECT "signedtest2", d1, d2 FROM cs2;
|
||||
SELECT "signedtest2", d1, d2 FROM cs3;
|
||||
|
||||
# Update multiple rows
|
||||
# Updates with multiple constant values in WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 in (-99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 in (-9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 in (-0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "signedtest3", d1, d2 FROM cs1;
|
||||
SELECT "signedtest3", d1, d2 FROM cs2;
|
||||
SELECT "signedtest3", d1, d2 FROM cs3;
|
||||
|
||||
# Updates with comparison operators in WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 < -99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 < -9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 < -0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs1;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs2;
|
||||
SELECT "signedtest4a", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 <= -99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 <= -9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 <= -0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "signedtest4b", d1, d2 FROM cs1;
|
||||
SELECT "signedtest4b", d1, d2 FROM cs2;
|
||||
SELECT "signedtest4b", d1, d2 FROM cs3;
|
||||
|
||||
# Update with NULL in the WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 is NULL;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 is NULL;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 is NULL;
|
||||
SELECT "signedtest5", d1, d2 FROM cs1;
|
||||
SELECT "signedtest5", d1, d2 FROM cs2;
|
||||
SELECT "signedtest5", d1, d2 FROM cs3;
|
||||
|
||||
# Update with != operator
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 != 125;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 != 1.25;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 != 0.125;
|
||||
SELECT "signedtest6", d1, d2 FROM cs1;
|
||||
SELECT "signedtest6", d1, d2 FROM cs2;
|
||||
SELECT "signedtest6", d1, d2 FROM cs3;
|
||||
|
||||
# Update with non-constant value in the WHERE clause
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs2 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs3 SET d2=d1 WHERE d1 = d2;
|
||||
SELECT "signedtest7", d1, d2 FROM cs1;
|
||||
SELECT "signedtest7", d1, d2 FROM cs2;
|
||||
SELECT "signedtest7", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs2 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs3 SET d1=d2 WHERE d1 != d2;
|
||||
SELECT "signedtest8", d1, d2 FROM cs1;
|
||||
SELECT "signedtest8", d1, d2 FROM cs2;
|
||||
SELECT "signedtest8", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 < d2;
|
||||
UPDATE cs2 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 < d2;
|
||||
UPDATE cs3 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 < d2;
|
||||
SELECT "signedtest9", d1, d2 FROM cs1;
|
||||
SELECT "signedtest9", d1, d2 FROM cs2;
|
||||
SELECT "signedtest9", d1, d2 FROM cs3;
|
||||
CALL signeddeleteproc();
|
||||
CALL signedinsertproc();
|
||||
UPDATE cs1 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs2 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs3 SET d1=d2 WHERE d1 > d2;
|
||||
SELECT "signedtest10", d1, d2 FROM cs1;
|
||||
SELECT "signedtest10", d1, d2 FROM cs2;
|
||||
SELECT "signedtest10", d1, d2 FROM cs3;
|
||||
|
||||
# Updates with functions and expressions in the WHERE clause
|
||||
|
||||
|
||||
# Repeat above tests for the unsigned case
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
|
||||
# Updates with constant values without a WHERE clause
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest1", d1, d2 FROM cs6;
|
||||
|
||||
#
|
||||
# Updates with WHERE clause
|
||||
#
|
||||
# Update a single row with a constant value in WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=0 WHERE d1=99999999999999999999999999999999999998;
|
||||
UPDATE cs4 SET d1=0, d2=123456789012345678 WHERE d2=9999999999999999999;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=0 WHERE d1=9999999999999999999999999999.9999999998;
|
||||
UPDATE cs5 SET d1=0, d2=123456789.012345678 WHERE d2=999999999.9999999999;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0 WHERE d1=0.99999999999999999999999999999999999998;
|
||||
UPDATE cs6 SET d1=0, d2=0.123456789012345678 WHERE d2=0.9999999999999999999;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest2", d1, d2 FROM cs6;
|
||||
|
||||
# Update multiple rows
|
||||
# Updates with multiple constant values in WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 in (99999999999999999999999999999999999998, 99999999999999999999999999999999999999);
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 in (9999999999999999999999999999.9999999998, 9999999999999999999999999999.9999999999);
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 in (0.99999999999999999999999999999999999998, 0.99999999999999999999999999999999999999);
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest3", d1, d2 FROM cs6;
|
||||
|
||||
#
|
||||
# Updates with comparison operators in WHERE clause
|
||||
#
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 > 99999999999999999999999999999999999998 OR d2 > 9999999999999999998;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 > 9999999999999999999999999999.9999999998 OR d2 > 999999999.9999999998;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 > 0.99999999999999999999999999999999999998 OR d2 > 0.9999999999999999998;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest4a", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 >= 99999999999999999999999999999999999998 OR d2 >= 9999999999999999998;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 >= 9999999999999999999999999999.9999999998 OR d2 >= 999999999.9999999998;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 >= 0.99999999999999999999999999999999999998 OR d2 >= 0.9999999999999999998;
|
||||
SELECT "unsignedtest4b", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest4b", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest4b", d1, d2 FROM cs6;
|
||||
|
||||
# Update with NULL in the WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 is NULL;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 is NULL;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 is NULL;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest5", d1, d2 FROM cs6;
|
||||
|
||||
# Update with != operator
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 != 125;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 != 1.25;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 != 0.125;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest6", d1, d2 FROM cs6;
|
||||
|
||||
# Update with non-constant value in the WHERE clause
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs5 SET d2=d1 WHERE d1 = d2;
|
||||
UPDATE cs6 SET d2=d1 WHERE d1 = d2;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest7", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs5 SET d1=d2 WHERE d1 != d2;
|
||||
UPDATE cs6 SET d1=d2 WHERE d1 != d2;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest8", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=12345678901234567890123456789012345678, d2=1234567890123456789 WHERE d1 < d2;
|
||||
UPDATE cs5 SET d1=1234567890123456789012345678.9012345678, d2=123456789.0123456789 WHERE d1 < d2;
|
||||
UPDATE cs6 SET d1=0.12345678901234567890123456789012345678, d2=0.1234567890123456789 WHERE d1 < d2;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest9", d1, d2 FROM cs6;
|
||||
CALL unsigneddeleteproc();
|
||||
CALL unsignedinsertproc();
|
||||
UPDATE cs4 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs5 SET d1=d2 WHERE d1 > d2;
|
||||
UPDATE cs6 SET d1=d2 WHERE d1 > d2;
|
||||
SELECT "unsignedtest10a", d1, d2 FROM cs4;
|
||||
SELECT "unsignedtest10a", d1, d2 FROM cs5;
|
||||
SELECT "unsignedtest10a", d1, d2 FROM cs6;
|
||||
|
||||
# Following test fails due to MCOL-3892
|
||||
# Uncomment the test when the issue is fixed.
|
||||
#CALL unsigneddeleteproc();
|
||||
#CALL unsignedinsertproc();
|
||||
#UPDATE cs4 SET d2=d1 WHERE d1 < d2;
|
||||
#UPDATE cs5 SET d2=d1 WHERE d1 < d2;
|
||||
#UPDATE cs6 SET d2=d1 WHERE d1 < d2;
|
||||
#SELECT "unsignedtest10b", d1, d2 FROM cs4;
|
||||
#SELECT "unsignedtest10b", d1, d2 FROM cs5;
|
||||
#SELECT "unsignedtest10b", d1, d2 FROM cs6;
|
||||
|
||||
# Updates with functions and expressions in the WHERE clause
|
||||
|
||||
# Clean UP
|
||||
DROP PROCEDURE IF EXISTS signedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS signeddeleteproc;
|
||||
DROP PROCEDURE IF EXISTS unsignedinsertproc;
|
||||
DROP PROCEDURE IF EXISTS unsigneddeleteproc;
|
||||
DROP DATABASE mcol641_update_db;
|
Reference in New Issue
Block a user