diff options
author | unknown <bell@sanja.is.com.ua> | 2002-12-08 03:19:03 +0200 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2002-12-08 03:19:03 +0200 |
commit | 230f5f3b0f65f0c02c49ed6456450f31caa779ea (patch) | |
tree | a0a02646c1b32d0f0ec4d86a3682e17b768a9e71 /mysql-test/r/row.result | |
parent | 5b54427d7d879a47893885dbfa0466b4bd69aaf1 (diff) | |
download | mariadb-git-230f5f3b0f65f0c02c49ed6456450f31caa779ea.tar.gz |
optimized IN with Rows (SCRUM)
NULL with row (IN)
cardinality error of row inside row
new[]
fixed layout
mysql-test/r/row.result:
test of optimized IN with Rows
test of NULL with row
test of cardinality error of row inside row
mysql-test/t/row.test:
test of optimized IN with Rows
test of NULL with row
test of cardinality error of row inside row
sql/item_cmpfunc.cc:
optimized IN with Rows
NULL with row (IN)
cardinality error of row inside row
sql/item_cmpfunc.h:
optimized IN with Rows
NULL with row (IN)
cardinality error of row inside row
fixed layout
sql/sql_list.h:
fixed layout
new[]
Diffstat (limited to 'mysql-test/r/row.result')
-rw-r--r-- | mysql-test/r/row.result | 76 |
1 files changed, 65 insertions, 11 deletions
diff --git a/mysql-test/r/row.result b/mysql-test/r/row.result index e5bc5f4abe5..e0b524d9bb2 100644 --- a/mysql-test/r/row.result +++ b/mysql-test/r/row.result @@ -4,6 +4,35 @@ row(1,2,3) IN (row(3,2,3), row(1,2,3), row(1,3,3)) select row(10,2,3) IN (row(3,2,3), row(1,2,3), row(1,3,3)); row(10,2,3) IN (row(3,2,3), row(1,2,3), row(1,3,3)) 0 +select row(1,2,3) IN (row(3,NULL,3), row(1,2,3), row(1,3,3)); +row(1,2,3) IN (row(3,NULL,3), row(1,2,3), row(1,3,3)) +1 +select row(10,2,3) IN (row(3,NULL,3), row(1,2,3), row(1,3,3)); +row(10,2,3) IN (row(3,NULL,3), row(1,2,3), row(1,3,3)) +NULL +select row('a',1.5,3) IN (row(1,2,3), row('a',1.5,3), row('a','a','a')); +row('a',1.5,3) IN (row(1,2,3), row('a',1.5,3), row('a','a','a')) +1 +select row('a',0,3) IN (row(3,2,3), row('a','0','3'), row(1,3,3)); +row('a',0,3) IN (row(3,2,3), row('a','0','3'), row(1,3,3)) +1 +select row('a',0,3) IN (row(3,2,3), row('a','a','3'), row(1,3,3)); +row('a',0,3) IN (row(3,2,3), row('a','a','3'), row(1,3,3)) +1 +select row('a',1.5,3) IN (row(3,NULL,3), row('a',1.5,3), row(1,3,3)); +row('a',1.5,3) IN (row(3,NULL,3), row('a',1.5,3), row(1,3,3)) +1 +select row('b',1.5,3) IN (row(3,NULL,3), row('a',1.5,3), row(1,3,3)); +row('b',1.5,3) IN (row(3,NULL,3), row('a',1.5,3), row(1,3,3)) +NULL +select row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,4))); +row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,4))) +1 +select row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,4)); +Cardinality error (more/less than 2 columns) +select row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,NULL))); +row(1,2,row(3,4)) IN (row(3,2,row(3,4)), row(1,2,row(3,NULL))) +NULL SELECT ROW(1,2,3)=ROW(1,2,3); ROW(1,2,3)=ROW(1,2,3) 1 @@ -42,9 +71,20 @@ ROW('test',2,3.33)=ROW('test',2,3.33) 1 SELECT ROW('test',2,3.33)=ROW('test',2,3.33,4); Cardinality error (more/less than 3 columns) +SELECT ROW('test',2,ROW(3,33))=ROW('test',2,ROW(3,33)); +ROW('test',2,ROW(3,33))=ROW('test',2,ROW(3,33)) +1 +SELECT ROW('test',2,ROW(3,33))=ROW('test',2,ROW(3,3)); +ROW('test',2,ROW(3,33))=ROW('test',2,ROW(3,3)) +0 +SELECT ROW('test',2,ROW(3,33))=ROW('test',2,ROW(3,NULL)); +ROW('test',2,ROW(3,33))=ROW('test',2,ROW(3,NULL)) +NULL +SELECT ROW('test',2,ROW(3,33))=ROW('test',2,4); +Cardinality error (more/less than 2 columns) drop table if exists t1; create table t1 ( a int, b int, c int); -insert into t1 values (1,2,3), (2,3,1), (3,2,1); +insert into t1 values (1,2,3), (2,3,1), (3,2,1), (1,2,NULL); select * from t1 where ROW(1,2,3)=ROW(a,b,c); a b c 1 2 3 @@ -54,16 +94,30 @@ select * from t1 where ROW(1,2,3)<ROW(a,b,c); a b c 2 3 1 3 2 1 -select * from t1 where ROW(a,2,3) IN(row(1,b,c), row(2,3,1)); -a b c -1 2 3 -select * from t1 where ROW(c,2,3) IN(row(1,b,a), row(2,3,1)); -a b c -3 2 1 -select * from t1 where ROW(a,b,c) IN(row(1,2,3), row(3,2,1)); -a b c -1 2 3 -3 2 1 +select ROW(a,2,3) IN(row(1,b,c), row(2,3,1)) from t1; +ROW(a,2,3) IN(row(1,b,c), row(2,3,1)) +1 +0 +0 +NULL +select ROW(c,2,3) IN(row(1,b,a), row(2,3,1)) from t1; +ROW(c,2,3) IN(row(1,b,a), row(2,3,1)) +0 +0 +1 +NULL +select ROW(a,b,c) IN(row(1,2,3), row(3,2,1)) from t1; +ROW(a,b,c) IN(row(1,2,3), row(3,2,1)) +1 +0 +1 +NULL +select ROW(1,2,3) IN(row(a,b,c), row(1,2,3)) from t1; +ROW(1,2,3) IN(row(a,b,c), row(1,2,3)) +1 +1 +1 +1 drop table t1; select ROW(1,1); Cardinality error (more/less than 1 columns) |