patch 4.0

This commit is contained in:
wangzelin.wzl
2022-10-24 10:34:53 +08:00
parent 4ad6e00ec3
commit 93a1074b0c
10533 changed files with 2588271 additions and 2299373 deletions

View File

@ -502,3 +502,50 @@ select collation(cast('A' as char)), cast('A' as char) < 'a';
collation(cast('A' as char)) cast('A' as char) < 'a'
utf8mb4_bin 1
drop table coll_test;
select CAST('Ab123人' AS char CHAR SET utf8mb4);
CAST('Ab123人' AS char CHAR SET utf8mb4)
Ab123人
SELECT collation(CAST('Ab123人' AS char CHAR SET utf8mb4));
collation(CAST('Ab123人' AS char CHAR SET utf8mb4))
utf8mb4_general_ci
SELECT length(CAST('Ab123人' AS char CHAR SET utf8mb4));
length(CAST('Ab123人' AS char CHAR SET utf8mb4))
8
select CAST('Ab123人' AS char CHAR SET binary);
CAST('Ab123人' AS char CHAR SET binary)
Ab123人
SELECT collation(CAST('Ab123人' AS char CHAR SET binary));
collation(CAST('Ab123人' AS char CHAR SET binary))
binary
SELECT length(CAST('Ab123人' AS char CHAR SET binary));
length(CAST('Ab123人' AS char CHAR SET binary))
8
select CAST('Ab123人' AS char CHAR SET gbk);
CAST('Ab123人' AS char CHAR SET gbk)
Ab123人
SELECT collation(CAST('Ab123人' AS char CHAR SET gbk));
collation(CAST('Ab123人' AS char CHAR SET gbk))
gbk_chinese_ci
SELECT length(CAST('Ab123人' AS char CHAR SET gbk));
length(CAST('Ab123人' AS char CHAR SET gbk))
7
create table coll_test(c1 char(10) collate utf8mb4_bin, c2 char(10) collate gbk_bin, c3 char(10) char set binary);
insert into coll_test values('Ab123人', 'Ab123人', 'Ab123人');
select cast(c1 as char(20)), cast(c2 as char(20)), cast(c3 as char(20)) from coll_test;
cast(c1 as char(20)) cast(c2 as char(20)) cast(c3 as char(20))
Ab123人 Ab123人 Ab123人
select collation(cast(c1 as char(20))), collation(cast(c2 as char(20))), collation(cast(c3 as char(20))) from coll_test;
collation(cast(c1 as char(20))) collation(cast(c2 as char(20))) collation(cast(c3 as char(20)))
utf8mb4_bin utf8mb4_bin utf8mb4_bin
create or replace view v1(c1,c2,c3,c4) as select cast('abc' as char), cast('abc' as char char set utf8mb4),
cast('abc' as char char set binary), cast('abc' as binary);
show create view v1;
View Create View character_set_client collation_connection
v1 CREATE VIEW `v1` AS select cast('abc' as char charset utf8mb4) AS `c1`,cast('abc' as char charset utf8mb4) AS `c2`,cast('abc' as char charset binary) AS `c3`,cast('abc' as char charset binary) AS `c4` utf8mb4 utf8mb4_bin
create or replace view v1(c1,c2,c3,c4) as select cast('abc' as char(10)), cast('abc' as char(10) char set utf8mb4),
cast('abc' as char(10) char set binary), cast('abc' as binary(10));
show create view v1;
View Create View character_set_client collation_connection
v1 CREATE VIEW `v1` AS select cast('abc' as char(10) charset utf8mb4) AS `c1`,cast('abc' as char(10) charset utf8mb4) AS `c2`,cast('abc' as char(10) charset binary) AS `c3`,cast('abc' as char(10) charset binary) AS `c4` utf8mb4 utf8mb4_bin
drop table coll_test;
drop view v1;

View File

@ -1,202 +1,406 @@
result_format: 4
================ expression export_set ================
select export_set(0,"Y","N","-",5);
export_set(0,"Y","N","-",5)
N-N-N-N-N
+-----------------------------+
| export_set(0,"Y","N","-",5) |
+-----------------------------+
| N-N-N-N-N |
+-----------------------------+
select export_set(7,"Y","N","-",5);
export_set(7,"Y","N","-",5)
Y-Y-Y-N-N
+-----------------------------+
| export_set(7,"Y","N","-",5) |
+-----------------------------+
| Y-Y-Y-N-N |
+-----------------------------+
select export_set(11,"Y","N","-",5);
export_set(11,"Y","N","-",5)
Y-Y-N-Y-N
+------------------------------+
| export_set(11,"Y","N","-",5) |
+------------------------------+
| Y-Y-N-Y-N |
+------------------------------+
select export_set(20,"Y","N","-",5);
export_set(20,"Y","N","-",5)
N-N-Y-N-Y
+------------------------------+
| export_set(20,"Y","N","-",5) |
+------------------------------+
| N-N-Y-N-Y |
+------------------------------+
select export_set(9,"","","-",5);
export_set(9,"","","-",5)
----
+---------------------------+
| export_set(9,"","","-",5) |
+---------------------------+
| ---- |
+---------------------------+
select export_set(9,"Y","N","-",5);
export_set(9,"Y","N","-",5)
Y-N-N-Y-N
+-----------------------------+
| export_set(9,"Y","N","-",5) |
+-----------------------------+
| Y-N-N-Y-N |
+-----------------------------+
select export_set(9,"左","右","-",5);
export_set(9,"左","右","-",5)
左-右-右-左-右
+---------------------------------+
| export_set(9,"左","右","-",5) |
+---------------------------------+
| 左-右-右-左-右 |
+---------------------------------+
select export_set(9,"上","下","-",5);
export_set(9,"上","下","-",5)
上-下-下-上-下
+---------------------------------+
| export_set(9,"上","下","-",5) |
+---------------------------------+
| 上-下-下-上-下 |
+---------------------------------+
select export_set(5,"Y","N",".",5);
export_set(5,"Y","N",".",5)
Y.N.Y.N.N
+-----------------------------+
| export_set(5,"Y","N",".",5) |
+-----------------------------+
| Y.N.Y.N.N |
+-----------------------------+
select export_set(5,"Y","N","=",5);
export_set(5,"Y","N","=",5)
Y=N=Y=N=N
+-----------------------------+
| export_set(5,"Y","N","=",5) |
+-----------------------------+
| Y=N=Y=N=N |
+-----------------------------+
select export_set(5,"Y","N","????????",5);
export_set(5,"Y","N","????????",5)
Y????????N????????Y????????N????????N
+---------------------------------------+
| export_set(5,"Y","N","????????",5) |
+---------------------------------------+
| Y????????N????????Y????????N????????N |
+---------------------------------------+
select export_set(100,"Y","N",".",3);
export_set(100,"Y","N",".",3)
N.N.Y
+-------------------------------+
| export_set(100,"Y","N",".",3) |
+-------------------------------+
| N.N.Y |
+-------------------------------+
select export_set(100,"Y","N",".",5);
export_set(100,"Y","N",".",5)
N.N.Y.N.N
+-------------------------------+
| export_set(100,"Y","N",".",5) |
+-------------------------------+
| N.N.Y.N.N |
+-------------------------------+
select export_set(100,"Y","N",".",7);
export_set(100,"Y","N",".",7)
N.N.Y.N.N.Y.Y
+-------------------------------+
| export_set(100,"Y","N",".",7) |
+-------------------------------+
| N.N.Y.N.N.Y.Y |
+-------------------------------+
select export_set(100,"Y","N",".",10);
export_set(100,"Y","N",".",10)
N.N.Y.N.N.Y.Y.N.N.N
+--------------------------------+
| export_set(100,"Y","N",".",10) |
+--------------------------------+
| N.N.Y.N.N.Y.Y.N.N.N |
+--------------------------------+
select export_set(null,"Y","N",".",5);
export_set(null,"Y","N",".",5)
NULL
+--------------------------------+
| export_set(null,"Y","N",".",5) |
+--------------------------------+
| NULL |
+--------------------------------+
select export_set(0,"Y","N",".",5);
export_set(0,"Y","N",".",5)
N.N.N.N.N
+-----------------------------+
| export_set(0,"Y","N",".",5) |
+-----------------------------+
| N.N.N.N.N |
+-----------------------------+
select export_set(5,null,"N",".",5);
export_set(5,null,"N",".",5)
NULL
+------------------------------+
| export_set(5,null,"N",".",5) |
+------------------------------+
| NULL |
+------------------------------+
select export_set(5,'',"N",".",5);
export_set(5,'',"N",".",5)
.N..N.N
+----------------------------+
| export_set(5,'',"N",".",5) |
+----------------------------+
| .N..N.N |
+----------------------------+
select export_set(5,"Y",null,".",5);
export_set(5,"Y",null,".",5)
NULL
+------------------------------+
| export_set(5,"Y",null,".",5) |
+------------------------------+
| NULL |
+------------------------------+
select export_set(5,"Y",'',".",5);
export_set(5,"Y",'',".",5)
Y..Y..
+----------------------------+
| export_set(5,"Y",'',".",5) |
+----------------------------+
| Y..Y.. |
+----------------------------+
select export_set(5,"Y","N",null,5);
export_set(5,"Y","N",null,5)
NULL
+------------------------------+
| export_set(5,"Y","N",null,5) |
+------------------------------+
| NULL |
+------------------------------+
select export_set(5,"Y","N",'',5);
export_set(5,"Y","N",'',5)
YNYNN
+----------------------------+
| export_set(5,"Y","N",'',5) |
+----------------------------+
| YNYNN |
+----------------------------+
select export_set(5,"Y","N",".",null);
export_set(5,"Y","N",".",null)
NULL
+--------------------------------+
| export_set(5,"Y","N",".",null) |
+--------------------------------+
| NULL |
+--------------------------------+
select export_set(5,"Y","N",".",0);
export_set(5,"Y","N",".",0)
+-----------------------------+
| export_set(5,"Y","N",".",0) |
+-----------------------------+
| |
+-----------------------------+
select export_set(55555555555555,"YY","NN",".",0);
export_set(55555555555555,"YY","NN",".",0)
+--------------------------------------------+
| export_set(55555555555555,"YY","NN",".",0) |
+--------------------------------------------+
| |
+--------------------------------------------+
select export_set(55555555555555,"YY","NN",".......",0);
export_set(55555555555555,"YY","NN",".......",0)
+--------------------------------------------------+
| export_set(55555555555555,"YY","NN",".......",0) |
+--------------------------------------------------+
| |
+--------------------------------------------------+
select export_set(100,'',1);
export_set(100,'',1)
1,1,,1,1,,,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
+------------------------------------------------------------------------------------------------------------------------------+
| export_set(100,'',1) |
+------------------------------------------------------------------------------------------------------------------------------+
| 1,1,,1,1,,,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 |
+------------------------------------------------------------------------------------------------------------------------------+
select export_set(100,1,'');
export_set(100,1,'')
,,1,,,1,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+--------------------------------------------------------------------+
| export_set(100,1,'') |
+--------------------------------------------------------------------+
| ,,1,,,1,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
+--------------------------------------------------------------------+
select export_set(100,1,0,'');
export_set(100,1,0,'')
0010011000000000000000000000000000000000000000000000000000000000
+------------------------------------------------------------------+
| export_set(100,1,0,'') |
+------------------------------------------------------------------+
| 0010011000000000000000000000000000000000000000000000000000000000 |
+------------------------------------------------------------------+
select export_set(1000,'',1);
export_set(1000,'',1)
1,1,1,,1,,,,,,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
+---------------------------------------------------------------------------------------------------------------------------+
| export_set(1000,'',1) |
+---------------------------------------------------------------------------------------------------------------------------+
| 1,1,1,,1,,,,,,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 |
+---------------------------------------------------------------------------------------------------------------------------+
select export_set(1000,1,'');
export_set(1000,1,'')
,,,1,,1,1,1,1,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
+-----------------------------------------------------------------------+
| export_set(1000,1,'') |
+-----------------------------------------------------------------------+
| ,,,1,,1,1,1,1,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
+-----------------------------------------------------------------------+
select export_set(1000,1,0,'');
export_set(1000,1,0,'')
0001011111000000000000000000000000000000000000000000000000000000
+------------------------------------------------------------------+
| export_set(1000,1,0,'') |
+------------------------------------------------------------------+
| 0001011111000000000000000000000000000000000000000000000000000000 |
+------------------------------------------------------------------+
select export_set(8,"Y","N");
export_set(8,"Y","N")
N,N,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(88,"Y","N");
export_set(88,"Y","N")
N,N,N,Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(88,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(888,"Y","N");
export_set(888,"Y","N")
N,N,N,Y,Y,Y,Y,N,Y,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(888,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,Y,Y,Y,Y,N,Y,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(8888,"Y","N");
export_set(8888,"Y","N")
N,N,N,Y,Y,Y,N,Y,N,Y,N,N,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8888,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,Y,Y,Y,N,Y,N,Y,N,N,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(8,"1","0");
export_set(8,"1","0")
0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8,"1","0") |
+---------------------------------------------------------------------------------------------------------------------------------+
| 0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(8,"X","Y");
export_set(8,"X","Y")
Y,Y,Y,X,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8,"X","Y") |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,X,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(8,"Y","N",'+');
export_set(8,"Y","N",'+')
N+N+N+Y+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8,"Y","N",'+') |
+---------------------------------------------------------------------------------------------------------------------------------+
| N+N+N+Y+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N+N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(8,"1","0",'*');
export_set(8,"1","0",'*')
0*0*0*1*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8,"1","0",'*') |
+---------------------------------------------------------------------------------------------------------------------------------+
| 0*0*0*1*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0*0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(8,"X","Y",'*');
export_set(8,"X","Y",'*')
Y*Y*Y*X*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(8,"X","Y",'*') |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y*Y*Y*X*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y*Y |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(7,1,0,"-",5);
export_set(7,1,0,"-",5)
1-1-1-0-0
+-------------------------+
| export_set(7,1,0,"-",5) |
+-------------------------+
| 1-1-1-0-0 |
+-------------------------+
select export_set(7,11,00,"-",5);
export_set(7,11,00,"-",5)
11-11-11-0-0
+---------------------------+
| export_set(7,11,00,"-",5) |
+---------------------------+
| 11-11-11-0-0 |
+---------------------------+
select export_set(7,111,000,"-",5);
export_set(7,111,000,"-",5)
111-111-111-0-0
+-----------------------------+
| export_set(7,111,000,"-",5) |
+-----------------------------+
| 111-111-111-0-0 |
+-----------------------------+
select export_set(7,111,000,5,5);
export_set(7,111,000,5,5)
111511151115050
+---------------------------+
| export_set(7,111,000,5,5) |
+---------------------------+
| 111511151115050 |
+---------------------------+
select export_set(true,1,0);
export_set(true,1,0)
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(true,1,0) |
+---------------------------------------------------------------------------------------------------------------------------------+
| 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(true,"1","0");
export_set(true,"1","0")
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(true,"1","0") |
+---------------------------------------------------------------------------------------------------------------------------------+
| 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(false,1,0);
export_set(false,1,0)
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(false,1,0) |
+---------------------------------------------------------------------------------------------------------------------------------+
| 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(false,"1","0");
export_set(false,"1","0")
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(false,"1","0") |
+---------------------------------------------------------------------------------------------------------------------------------+
| 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(1.4,1,0);
export_set(1.4,1,0)
1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(1.4,1,0) |
+---------------------------------------------------------------------------------------------------------------------------------+
| 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(2.4,1,0);
export_set(2.4,1,0)
0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(2.4,1,0) |
+---------------------------------------------------------------------------------------------------------------------------------+
| 0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(1.4,"y","n");
export_set(1.4,"y","n")
y,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(1.4,"y","n") |
+---------------------------------------------------------------------------------------------------------------------------------+
| y,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(2.4,"y","n");
export_set(2.4,"y","n")
n,y,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(2.4,"y","n") |
+---------------------------------------------------------------------------------------------------------------------------------+
| n,y,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(9223372036854775808,"Y","N");
export_set(9223372036854775808,"Y","N")
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(9223372036854775808,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(9223372036854775809,"Y","N");
export_set(9223372036854775809,"Y","N")
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(9223372036854775809,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(-9223372036854775808,"Y","N");
export_set(-9223372036854775808,"Y","N")
N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,Y
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(-9223372036854775808,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,Y |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(18446744073709551615,"Y","N");
export_set(18446744073709551615,"Y","N")
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(18446744073709551615,"Y","N") |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(9223372036854775808,"Y","N",",",92233720368547758080000000000);
export_set(9223372036854775808,"Y","N",",",92233720368547758080000000000)
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(9223372036854775808,"Y","N",",",92233720368547758080000000000) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(9223372036854775808,"Y","N",",",9223372036854775808);
export_set(9223372036854775808,"Y","N",",",9223372036854775808)
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(9223372036854775808,"Y","N",",",9223372036854775808) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(9223372036854775809,"Y","N",",",9223372036854775809);
export_set(9223372036854775809,"Y","N",",",9223372036854775809)
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(9223372036854775809,"Y","N",",",9223372036854775809) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(9223372036854775809,"Y","N",",",9223372036854775809000000000000);
export_set(9223372036854775809,"Y","N",",",9223372036854775809000000000000)
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(9223372036854775809,"Y","N",",",9223372036854775809000000000000) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(-9223372036854775808,"Y","N",",",-9223372036854775808);
export_set(-9223372036854775808,"Y","N",",",-9223372036854775808)
N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,Y
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(-9223372036854775808,"Y","N",",",-9223372036854775808) |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,Y |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(-9223372036854775808,"Y","N",",",-9223372036854775808000000000);
export_set(-9223372036854775808,"Y","N",",",-9223372036854775808000000000)
N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,Y
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(-9223372036854775808,"Y","N",",",-9223372036854775808000000000) |
+---------------------------------------------------------------------------------------------------------------------------------+
| N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,Y |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(18446744073709551615,"Y","N",",",18446744073709551615);
export_set(18446744073709551615,"Y","N",",",18446744073709551615)
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(18446744073709551615,"Y","N",",",18446744073709551615) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(18446744073709551615,"Y","N",",",1844674407370955161500000000000);
export_set(18446744073709551615,"Y","N",",",1844674407370955161500000000000)
Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(18446744073709551615,"Y","N",",",1844674407370955161500000000000) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,N |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set();
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
select export_set(1);
@ -215,6 +419,8 @@ select export_set(1,2,3,a);
ERROR 42S22: Unknown column 'a' in 'field list'
select export_set(1,2,3,4,a);
ERROR 42S22: Unknown column 'a' in 'field list'
drop table if exists test;
create table test(c1 int, c2 varchar(20), c3 varchar(20), c4 varchar(20), c5 int);
insert into test values(11,"Y","N",",",10);
@ -225,71 +431,89 @@ insert into test values(11,"Y","N",null,10);
insert into test values(11,"Y","N",",",null);
insert into test values(null,null,null,null,null);
select export_set(c1,c2,c3,c4,c5) from test;
export_set(c1,c2,c3,c4,c5)
Y,Y,N,Y,N,N,N,N,N,N
NULL
NULL
NULL
NULL
NULL
NULL
+----------------------------+
| export_set(c1,c2,c3,c4,c5) |
+----------------------------+
| Y,Y,N,Y,N,N,N,N,N,N |
| NULL |
| NULL |
| NULL |
| NULL |
| NULL |
| NULL |
+----------------------------+
select export_set(c1,c2,c3,c4) from test;
export_set(c1,c2,c3,c4)
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
NULL
NULL
NULL
NULL
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
NULL
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(c1,c2,c3,c4) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| NULL |
| NULL |
| NULL |
| NULL |
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| NULL |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(c1,c2,c3) from test;
export_set(c1,c2,c3)
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
NULL
NULL
NULL
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
NULL
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(c1,c2,c3) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| NULL |
| NULL |
| NULL |
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| NULL |
+---------------------------------------------------------------------------------------------------------------------------------+
insert into test values(100000,"+","-",",",1000000);
insert into test values(55555555,"+","-",",",100000);
insert into test values(7777777,"+","-",",",10000);
select export_set(c1,c2,c3,c4,5) from test;
export_set(c1,c2,c3,c4,5)
Y,Y,N,Y,N
NULL
NULL
NULL
NULL
Y,Y,N,Y,N
NULL
-,-,-,-,-
+,+,-,-,-
+,-,-,-,+
+---------------------------+
| export_set(c1,c2,c3,c4,5) |
+---------------------------+
| Y,Y,N,Y,N |
| NULL |
| NULL |
| NULL |
| NULL |
| Y,Y,N,Y,N |
| NULL |
| -,-,-,-,- |
| +,+,-,-,- |
| +,-,-,-,+ |
+---------------------------+
select export_set(c1,c2,c3,'??',5) from test;
export_set(c1,c2,c3,'??',5)
Y??Y??N??Y??N
NULL
NULL
NULL
Y??Y??N??Y??N
Y??Y??N??Y??N
NULL
-??-??-??-??-
+??+??-??-??-
+??-??-??-??+
+-----------------------------+
| export_set(c1,c2,c3,'??',5) |
+-----------------------------+
| Y??Y??N??Y??N |
| NULL |
| NULL |
| NULL |
| Y??Y??N??Y??N |
| Y??Y??N??Y??N |
| NULL |
| -??-??-??-??- |
| +??+??-??-??- |
| +??-??-??-??+ |
+-----------------------------+
select export_set(c1,c2,c3) from test;
export_set(c1,c2,c3)
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
NULL
NULL
NULL
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N
NULL
-,-,-,-,-,+,-,+,-,+,+,-,-,-,-,+,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-
+,+,-,-,-,+,+,+,+,-,+,-,+,+,-,+,+,+,+,+,-,-,+,-,+,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-
+,-,-,-,+,+,+,+,+,-,+,+,-,+,-,+,-,+,+,-,+,+,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-
+---------------------------------------------------------------------------------------------------------------------------------+
| export_set(c1,c2,c3) |
+---------------------------------------------------------------------------------------------------------------------------------+
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| NULL |
| NULL |
| NULL |
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| Y,Y,N,Y,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N |
| NULL |
| -,-,-,-,-,+,-,+,-,+,+,-,-,-,-,+,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,- |
| +,+,-,-,-,+,+,+,+,-,+,-,+,+,-,+,+,+,+,+,-,-,+,-,+,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,- |
| +,-,-,-,+,+,+,+,+,-,+,+,-,+,-,+,-,+,+,-,+,+,+,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,-,- |
+---------------------------------------------------------------------------------------------------------------------------------+
select export_set(c1) from test;
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
select export_set(c1,c2) from test;
@ -297,41 +521,64 @@ ERROR 42000: Incorrect parameter count in the call to native function 'export_se
select export_set() from test;
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
drop table test;
drop table if exists t1;
create table t1 as select export_set(0,"Y","N","-",5);
desc t1;
Field Type Null Key Default Extra
export_set(0,"Y","N","-",5) varchar(127) YES NULL
+-----------------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------------------------+--------------+------+-----+---------+-------+
| export_set(0,"Y","N","-",5) | varchar(127) | YES | | NULL | |
+-----------------------------+--------------+------+-----+---------+-------+
drop table t1;
create table t1 as select export_set(99,"YYY","NX","---",77);
desc t1;
Field Type Null Key Default Extra
export_set(99,"YYY","NX","---",77) varchar(381) YES NULL
+------------------------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------------------------------+--------------+------+-----+---------+-------+
| export_set(99,"YYY","NX","---",77) | varchar(381) | YES | | NULL | |
+------------------------------------+--------------+------+-----+---------+-------+
drop table t1;
create table t1 as select export_set(99,"1","11","111",77);
desc t1;
Field Type Null Key Default Extra
export_set(99,"1","11","111",77) varchar(317) YES NULL
+----------------------------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------------------------------+--------------+------+-----+---------+-------+
| export_set(99,"1","11","111",77) | varchar(317) | YES | | NULL | |
+----------------------------------+--------------+------+-----+---------+-------+
drop table t1;
## bugfix#https://work.aone.alibaba-inc.com/issue/36895309
drop table if exists T_36895309;
CREATE TABLE T_36895309(A_0 INT,A_1 INT,A_2 VARCHAR(20),A_3 FLOAT,A_4 DATE);
INSERT INTO T_36895309 VALUES(1,1,'A',1.23,'1999-09-09'),(2,-1,'nb',3.21,'1111-11-11'),(3,0,'#',6666.6666,'11-11-11'),(4,NULL,NULL,NULL,NULL);
SELECT EXPORT_SET(A_2,'Y','N',',',5) FROM T_36895309 ;
EXPORT_SET(A_2,'Y','N',',',5)
N,N,N,N,N
N,N,N,N,N
N,N,N,N,N
NULL
+-------------------------------+
| EXPORT_SET(A_2,'Y','N',',',5) |
+-------------------------------+
| N,N,N,N,N |
| N,N,N,N,N |
| N,N,N,N,N |
| NULL |
+-------------------------------+
SELECT EXPORT_SET(A_3,'Y','N',',',5) FROM T_36895309 ;
EXPORT_SET(A_3,'Y','N',',',5)
Y,N,N,N,N
Y,Y,N,N,N
Y,Y,N,Y,N
NULL
+-------------------------------+
| EXPORT_SET(A_3,'Y','N',',',5) |
+-------------------------------+
| Y,N,N,N,N |
| Y,Y,N,N,N |
| Y,Y,N,Y,N |
| NULL |
+-------------------------------+
SELECT EXPORT_SET(A_4,'Y','N',',',5) FROM T_36895309 ;
EXPORT_SET(A_4,'Y','N',',',5)
Y,N,Y,Y,Y
Y,Y,Y,N,N
Y,Y,Y,N,N
NULL
+-------------------------------+
| EXPORT_SET(A_4,'Y','N',',',5) |
+-------------------------------+
| Y,N,Y,Y,Y |
| Y,Y,Y,N,N |
| Y,Y,Y,N,N |
| NULL |
+-------------------------------+
drop table T_36895309;

View File

@ -1,167 +1,271 @@
result_format: 4
================ expression instr ================
select instr('abc', '');
instr('abc', '')
1
select instr('', '');
instr('', '')
1
select instr('', 'abc');
instr('', 'abc')
0
select instr('abc', 'abcd');
instr('abc', 'abcd')
0
select instr('abc', 'abc');
instr('abc', 'abc')
1
select instr('abc', 'a');
instr('abc', 'a')
1
select instr('abc', 'b');
instr('abc', 'b')
2
select instr('abc', 'c');
instr('abc', 'c')
3
select instr('abc', 'bc');
instr('abc', 'bc')
2
select instr('abcbc', 'bc');
instr('abcbc', 'bc')
2
select instr('阿里巴巴', '阿里');
instr('阿里巴巴', '阿里')
1
select instr('阿里巴巴', '巴巴');
instr('阿里巴巴', '巴巴')
3
select instr('阿里巴巴巴巴', '巴巴');
instr('阿里巴巴巴巴', '巴巴')
3
select instr('阿里巴巴', '阿里巴巴');
instr('阿里巴巴', '阿里巴巴')
1
select instr('123', true);
instr('123', true)
1
select instr('23', true);
instr('23', true)
0
select instr(123, '23');
instr(123, '23')
2
select instr('123', 123);
instr('123', 123)
1
select instr('123.400000', 23.4);
instr('123.400000', 23.4)
2
select instr('123.400000', 123.4);
instr('123.400000', 123.4)
1
select instr('123.400000', null);
instr('123.400000', null)
NULL
select instr(null, '巴巴');
instr(null, '巴巴')
NULL
select instr('巴巴', null);
instr('巴巴', null)
NULL
select instr(null, null);
instr(null, null)
NULL
select instr(true, false);
instr(true, false)
0
select instr(true, true);
instr(true, true)
1
select instr(123, true);
instr(123, true)
1
select instr(123, false);
instr(123, false)
0
select instr(0123, false);
instr(0123, false)
0
select instr(1023, false);
instr(1023, false)
2
select instr(1023.4, false);
instr(1023.4, false)
2
select instr(1023.4, true);
instr(1023.4, true)
1
select instr(null, true);
instr(null, true)
NULL
select instr(true, null);
instr(true, null)
NULL
select instr(123, 23);
instr(123, 23)
2
select instr(123, 23456);
instr(123, 23456)
0
select instr(123.4, 123);
instr(123.4, 123)
1
select instr(1234, 123.4);
instr(1234, 123.4)
0
select instr(1234, null);
instr(1234, null)
NULL
select instr(null, 123);
instr(null, 123)
NULL
select instr(123.400000, 123.4);
instr(123.400000, 123.4)
1
select instr(123.400000, 123.41);
instr(123.400000, 123.41)
0
select instr(123.400000, null);
instr(123.400000, null)
NULL
select instr(null, 123.41);
instr(null, 123.41)
NULL
select instr('abc', '') from dual;
+------------------+
| instr('abc', '') |
+------------------+
| 1 |
+------------------+
select instr('', '') from dual;
+---------------+
| instr('', '') |
+---------------+
| 1 |
+---------------+
select instr('', 'abc') from dual;
+------------------+
| instr('', 'abc') |
+------------------+
| 0 |
+------------------+
select instr('abc', 'abcd') from dual;
+----------------------+
| instr('abc', 'abcd') |
+----------------------+
| 0 |
+----------------------+
select instr('abc', 'abc') from dual;
+---------------------+
| instr('abc', 'abc') |
+---------------------+
| 1 |
+---------------------+
select instr('abc', 'a') from dual;
+-------------------+
| instr('abc', 'a') |
+-------------------+
| 1 |
+-------------------+
select instr('abc', 'b') from dual;
+-------------------+
| instr('abc', 'b') |
+-------------------+
| 2 |
+-------------------+
select instr('abc', 'c') from dual;
+-------------------+
| instr('abc', 'c') |
+-------------------+
| 3 |
+-------------------+
select instr('abc', 'bc') from dual;
+--------------------+
| instr('abc', 'bc') |
+--------------------+
| 2 |
+--------------------+
select instr('abcbc', 'bc') from dual;
+----------------------+
| instr('abcbc', 'bc') |
+----------------------+
| 2 |
+----------------------+
select instr('阿里巴巴', '阿里') from dual;
+---------------------------------+
| instr('阿里巴巴', '阿里') |
+---------------------------------+
| 1 |
+---------------------------------+
select instr('阿里巴巴', '巴巴') from dual;
+---------------------------------+
| instr('阿里巴巴', '巴巴') |
+---------------------------------+
| 3 |
+---------------------------------+
select instr('阿里巴巴巴巴', '巴巴') from dual;
+---------------------------------------+
| instr('阿里巴巴巴巴', '巴巴') |
+---------------------------------------+
| 3 |
+---------------------------------------+
select instr('阿里巴巴', '阿里巴巴') from dual;
+---------------------------------------+
| instr('阿里巴巴', '阿里巴巴') |
+---------------------------------------+
| 1 |
+---------------------------------------+
select instr(123, '23') from dual;
+------------------+
| instr(123, '23') |
+------------------+
| 2 |
+------------------+
select instr('123', 123) from dual;
+-------------------+
| instr('123', 123) |
+-------------------+
| 1 |
+-------------------+
select instr('123.400000', 23.4) from dual;
+---------------------------+
| instr('123.400000', 23.4) |
+---------------------------+
| 2 |
+---------------------------+
select instr('123.400000', 123.4) from dual;
+----------------------------+
| instr('123.400000', 123.4) |
+----------------------------+
| 1 |
+----------------------------+
select instr('123.400000', null) from dual;
+---------------------------+
| instr('123.400000', null) |
+---------------------------+
| NULL |
+---------------------------+
select instr(null, '巴巴') from dual;
+-----------------------+
| instr(null, '巴巴') |
+-----------------------+
| NULL |
+-----------------------+
select instr('巴巴', null) from dual;
+-----------------------+
| instr('巴巴', null) |
+-----------------------+
| NULL |
+-----------------------+
select instr(null, null) from dual;
+-------------------+
| instr(null, null) |
+-------------------+
| NULL |
+-------------------+
select instr('123', true) from dual;
+--------------------+
| instr('123', true) |
+--------------------+
| 1 |
+--------------------+
select instr(123, 23) from dual;
+----------------+
| instr(123, 23) |
+----------------+
| 2 |
+----------------+
select instr(123, 23456) from dual;
+-------------------+
| instr(123, 23456) |
+-------------------+
| 0 |
+-------------------+
select instr(123.4, 123) from dual;
+-------------------+
| instr(123.4, 123) |
+-------------------+
| 1 |
+-------------------+
select instr(1234, 123.4) from dual;
+--------------------+
| instr(1234, 123.4) |
+--------------------+
| 0 |
+--------------------+
select instr(1234, null) from dual;
+-------------------+
| instr(1234, null) |
+-------------------+
| NULL |
+-------------------+
select instr(null, 123) from dual;
+------------------+
| instr(null, 123) |
+------------------+
| NULL |
+------------------+
select instr(123.400000, 123.4) from dual;
+--------------------------+
| instr(123.400000, 123.4) |
+--------------------------+
| 1 |
+--------------------------+
select instr(123.400000, 123.41) from dual;
+---------------------------+
| instr(123.400000, 123.41) |
+---------------------------+
| 0 |
+---------------------------+
select instr(123.400000, null) from dual;
+-------------------------+
| instr(123.400000, null) |
+-------------------------+
| NULL |
+-------------------------+
select instr(null, 123.41) from dual;
+---------------------+
| instr(null, 123.41) |
+---------------------+
| NULL |
+---------------------+
drop table if exists test;
create table test(c1 datetime primary key);
create table test(c1 date primary key);
insert into test values('2015-5-5');
select instr(c1, '201') from test;
instr(c1, '201')
1
+------------------+
| instr(c1, '201') |
+------------------+
| 1 |
+------------------+
select instr(c1, '') from test;
instr(c1, '')
1
+---------------+
| instr(c1, '') |
+---------------+
| 1 |
+---------------+
select instr(c1, 'haha') from test;
instr(c1, 'haha')
0
+-------------------+
| instr(c1, 'haha') |
+-------------------+
| 0 |
+-------------------+
select instr(c1, '-5') from test;
instr(c1, '-5')
0
+-----------------+
| instr(c1, '-5') |
+-----------------+
| 0 |
+-----------------+
select instr(c1, '2015-5-5') from test;
instr(c1, '2015-5-5')
0
select instr(c1, true) from test;
instr(c1, true)
3
+-----------------------+
| instr(c1, '2015-5-5') |
+-----------------------+
| 0 |
+-----------------------+
select instr(c1, 201) from test;
instr(c1, 201)
1
+----------------+
| instr(c1, 201) |
+----------------+
| 1 |
+----------------+
select instr(c1, 201.1) from test;
instr(c1, 201.1)
0
+------------------+
| instr(c1, 201.1) |
+------------------+
| 0 |
+------------------+
select instr(c1, null) from test;
instr(c1, null)
NULL
+-----------------+
| instr(c1, null) |
+-----------------+
| NULL |
+-----------------+
select instr(null, c1) from test;
instr(null, c1)
NULL
drop table if exists test;
+-----------------+
| instr(null, c1) |
+-----------------+
| NULL |
+-----------------+
select instr() from dual;
ERROR 42000: Incorrect parameter count in the call to native function 'instr'
select instr('abcda') from dual;
ERROR 42000: Incorrect parameter count in the call to native function 'instr'
select instr('abcda', 'a', 1) from dual;
ERROR 42000: Incorrect parameter count in the call to native function 'instr'
select instr('abcda', 'a', 1, 1) from dual;
ERROR 42000: Incorrect parameter count in the call to native function 'instr'
drop table test;

View File

@ -479,3 +479,25 @@ select ifnull(locate('a','a'),2.345 );
ifnull(locate('a','a'),2.345 )
1.000
drop table if exists test;
issue 40636846
select locate('', '中文', 1);
locate('', '中文', 1)
1
select locate('', '中文', 2);
locate('', '中文', 2)
4
select locate('', '中文', 3);
locate('', '中文', 3)
7
select locate('', '中文', 4);
locate('', '中文', 4)
0
select locate('', '中文', 5);
locate('', '中文', 5)
0
select locate('', '中文', 6);
locate('', '中文', 6)
0
select locate('', '中文', 7);
locate('', '中文', 7)
0

View File

@ -6287,18 +6287,3 @@ insert into t values ('');
select c1 regexp 'ddd' from t;
c1 regexp 'ddd'
0
drop table if exists t1, t2;
create table t1(c1 int, c2 varchar(10));
insert into t1 values(1, '1');
create table t2(c1 int);
insert into t2 values(1), (2);
select t2.*, (select t1.c1 from t1 where t1.c2 REGEXP t2.c1 limit 1 ) from t2;
c1 (select t1.c1 from t1 where t1.c2 REGEXP t2.c1 limit 1 )
1 1
2 NULL
select t2.*, (select t1.c1 from t1 where t1.c2 REGEXP t2.c1+1-1 limit 1 ) from t2;
c1 (select t1.c1 from t1 where t1.c2 REGEXP t2.c1+1-1 limit 1 )
1 1
2 NULL
drop table t1;
drop table t2;

View File

@ -26,6 +26,7 @@ select collation(concat(uc, x'41')) from coll_test;
select collation(concat('abc', x'41')) from coll_test;
select collation(concat('abc' collate utf8mb4_general_ci, x'41')) from coll_test;
select collation(concat(1, 2)) from coll_test;
# @bug collation is wrong for NULL result (zhuweng.yzf) ....yzf....Fri, 21 Aug 2015....18:17....
select collation(concat(1, null)) from coll_test;
# group_concat
@ -254,3 +255,32 @@ select collation(cast('A' as char)), cast('A' as char) < 'a';
################################################################
# tear-down
drop table coll_test;
select CAST('Ab123人' AS char CHAR SET utf8mb4);
SELECT collation(CAST('Ab123人' AS char CHAR SET utf8mb4));
SELECT length(CAST('Ab123人' AS char CHAR SET utf8mb4));
select CAST('Ab123人' AS char CHAR SET binary);
SELECT collation(CAST('Ab123人' AS char CHAR SET binary));
SELECT length(CAST('Ab123人' AS char CHAR SET binary));
select CAST('Ab123人' AS char CHAR SET gbk);
SELECT collation(CAST('Ab123人' AS char CHAR SET gbk));
SELECT length(CAST('Ab123人' AS char CHAR SET gbk));
create table coll_test(c1 char(10) collate utf8mb4_bin, c2 char(10) collate gbk_bin, c3 char(10) char set binary);
insert into coll_test values('Ab123人', 'Ab123人', 'Ab123人');
select cast(c1 as char(20)), cast(c2 as char(20)), cast(c3 as char(20)) from coll_test;
select collation(cast(c1 as char(20))), collation(cast(c2 as char(20))), collation(cast(c3 as char(20))) from coll_test;
create or replace view v1(c1,c2,c3,c4) as select cast('abc' as char), cast('abc' as char char set utf8mb4),
cast('abc' as char char set binary), cast('abc' as binary);
show create view v1;
create or replace view v1(c1,c2,c3,c4) as select cast('abc' as char(10)), cast('abc' as char(10) char set utf8mb4),
cast('abc' as char(10) char set binary), cast('abc' as binary(10));
show create view v1;
drop table coll_test;
drop view v1;

View File

@ -47,6 +47,7 @@ select ceil(null);
select ceil("13547370213547370213547370213547370201354737021354737021354737021354737021354737021354737021354737021354737021354737021354737021354737021354737021354737020.0000135473702135473702135473702135473702135473702135473702135473702135473702013547370213547370201354737021354737021354737021354737021354737021354737021354737021.0000135473702135473702135473702135473702135473702111111111111111111");
select ceil("13547370213547370213547370213547370201354737021354737021354737021354737021354737021354737021354737021354737021354737021354737021354737021354737021354737020.0000135473702135473702135473702135473702135473702135473702135473702135473702013547370213547370201354737021354737021354737021354737021354737021354737021354737021.0000135473702135473702135473702135473702135473702catters billet chloroplast's'");
##bugfix: https://work.aone.alibaba-inc.com/issue/31536811
--disable_warnings
drop table if exists t1;
--enable_warnings

View File

@ -1,11 +1,12 @@
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
#/--disableabortonerror/
#/test for export_set function in ob_expr_export_set.cpp/
--enable_abort_on_error
--echo ================ expression export_set ================
# owner: xiaofeng.lby
# owner group: SQL2
# test for export_set function in mysql mode
--result_format 4
--echo ================ expression export_set ================
# 基本检查
select export_set(0,"Y","N","-",5);
select export_set(7,"Y","N","-",5);
@ -85,6 +86,7 @@ select export_set(-9223372036854775808,"Y","N",",",-9223372036854775808000000000
select export_set(18446744073709551615,"Y","N",",",18446744073709551615);
select export_set(18446744073709551615,"Y","N",",",1844674407370955161500000000000);
# 参数错误检查
--error 1582
select export_set();
@ -105,11 +107,14 @@ select export_set(1,2,3,a);
--error 1054
select export_set(1,2,3,4,a);
# 用表数据做参数
--disable_warnings
drop table if exists test;
--enable_warnings
create table test(c1 int, c2 varchar(20), c3 varchar(20), c4 varchar(20), c5 int);
sleep 1;
insert into test values(11,"Y","N",",",10);
insert into test values(null,"Y","N",",",10);
insert into test values(11,null,"N",",",10);
@ -132,20 +137,25 @@ select export_set(c1) from test;
select export_set(c1,c2) from test;
--error 1582
select export_set() from test;
drop table test;
# ctas cases
--disable_warnings
drop table if exists t1;
--enable_warnings
create table t1 as select export_set(0,"Y","N","-",5);
sleep 1;
desc t1;
drop table t1;
create table t1 as select export_set(99,"YYY","NX","---",77);
sleep 1;
desc t1;
drop table t1;
create table t1 as select export_set(99,"1","11","111",77);
sleep 1;
desc t1;
drop table t1;
@ -159,4 +169,4 @@ INSERT INTO T_36895309 VALUES(1,1,'A',1.23,'1999-09-09'),(2,-1,'nb',3.21,'1111-1
SELECT EXPORT_SET(A_2,'Y','N',',',5) FROM T_36895309 ;
SELECT EXPORT_SET(A_3,'Y','N',',',5) FROM T_36895309 ;
SELECT EXPORT_SET(A_4,'Y','N',',',5) FROM T_36895309 ;
drop table T_36895309;
drop table T_36895309;

View File

@ -68,6 +68,7 @@ select floor(i1/10*8),i1/10*8 from tbl1;
select * from tbl1 order by floor(i4);
select * from tbl1 order by floor(i4) desc;
select floor(i4) abc from tbl1 order by abc desc;
#there is a bug;
select floor(v2) from tbl1;
select floor(i3) from tbl1;
select floor(d4) from tbl1;

View File

@ -4,71 +4,78 @@ set @@session.explicit_defaults_for_timestamp=off;
#### owner: yuchen.wyc
#### owner group: sql3
#### description: 测试instr函数
# tags: expr, datatype
--enable_sorted_result
--result_format 4
--echo ================ expression instr ================
select instr('abc', '');
select instr('', '');
select instr('', 'abc');
select instr('abc', 'abcd');
select instr('abc', 'abc');
select instr('abc', 'a');
select instr('abc', 'b');
select instr('abc', 'c');
select instr('abc', 'bc');
select instr('abcbc', 'bc');
select instr('阿里巴巴', '阿里');
select instr('阿里巴巴', '巴巴');
select instr('阿里巴巴巴巴', '巴巴');
select instr('阿里巴巴', '阿里巴巴');
select instr('123', true);
select instr('23', true);
select instr(123, '23');
select instr('123', 123);
select instr('123.400000', 23.4);
select instr('123.400000', 123.4);
select instr('123.400000', null);
select instr(null, '巴巴');
select instr('巴巴', null);
select instr(null, null);
select instr(true, false);
select instr(true, true);
select instr(123, true);
select instr(123, false);
select instr(0123, false);
select instr(1023, false);
select instr(1023.4, false);
select instr(1023.4, true);
select instr(null, true);
select instr(true, null);
select instr('abc', '') from dual;
select instr('', '') from dual;
select instr('', 'abc') from dual;
select instr('abc', 'abcd') from dual;
select instr('abc', 'abc') from dual;
select instr('abc', 'a') from dual;
select instr('abc', 'b') from dual;
select instr('abc', 'c') from dual;
select instr('abc', 'bc') from dual;
select instr('abcbc', 'bc') from dual;
select instr('阿里巴巴', '阿里') from dual;
select instr('阿里巴巴', '巴巴') from dual;
select instr('阿里巴巴巴巴', '巴巴') from dual;
select instr('阿里巴巴', '阿里巴巴') from dual;
select instr(123, '23') from dual;
select instr('123', 123) from dual;
select instr('123.400000', 23.4) from dual;
select instr('123.400000', 123.4) from dual;
select instr('123.400000', null) from dual;
select instr(null, '巴巴') from dual;
select instr('巴巴', null) from dual;
select instr(null, null) from dual;
select instr('123', true) from dual;
select instr(123, 23);
select instr(123, 23456);
select instr(123.4, 123);
select instr(1234, 123.4);
select instr(1234, null);
select instr(null, 123);
select instr(123, 23) from dual;
select instr(123, 23456) from dual;
select instr(123.4, 123) from dual;
select instr(1234, 123.4) from dual;
select instr(1234, null) from dual;
select instr(null, 123) from dual;
select instr(123.400000, 123.4);
select instr(123.400000, 123.41);
select instr(123.400000, null);
select instr(null, 123.41);
select instr(123.400000, 123.4) from dual;
select instr(123.400000, 123.41) from dual;
select instr(123.400000, null) from dual;
select instr(null, 123.41) from dual;
--disable_warnings
drop table if exists test;
--enable_warnings
create table test(c1 datetime primary key);
create table test(c1 date primary key);
sleep 5;
#alter session set nls_date_format = "yyyy-mm-dd hh24:mi:ss";
insert into test values('2015-5-5');
select instr(c1, '201') from test;
select instr(c1, '') from test;
select instr(c1, 'haha') from test;
select instr(c1, '-5') from test;
select instr(c1, '2015-5-5') from test;
select instr(c1, true) from test;
select instr(c1, 201) from test;
select instr(c1, 201.1) from test;
select instr(c1, null) from test;
select instr(null, c1) from test;
# with more params
--error 1582
select instr() from dual;
--error 1582
select instr('abcda') from dual;
--error 1582
select instr('abcda', 'a', 1) from dual;
--error 1582
select instr('abcda', 'a', 1, 1) from dual;
--disable_warnings
drop table if exists test;
drop table test;
--enable_warnings

View File

@ -196,3 +196,12 @@ select ifnull(locate('a','a'),2.345 );
--disable_warnings
drop table if exists test;
--enable_warnings
--echo issue 40636846
select locate('', '中文', 1);
select locate('', '中文', 2);
select locate('', '中文', 3);
select locate('', '中文', 4);
select locate('', '中文', 5);
select locate('', '中文', 6);
select locate('', '中文', 7);

View File

@ -1,7 +1,7 @@
--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
#owner: guoping.wgp
#owner: jiangxiu.wt
#owner group: sql1
--disable_abort_on_error

View File

@ -435,6 +435,7 @@ insert into t1 values('abcde_');
select a as c1u from t1 where a rlike 'ab\_def';
drop table t1;
##bug:https://work.aone.alibaba-inc.com/issue/25186566
--disable_warnings
drop table if exists t;
--enable_warnings
@ -442,20 +443,3 @@ drop table if exists t;
create table t (c1 char(20));
insert into t values ('');
select c1 regexp 'ddd' from t;
##bug:https://work.aone.alibaba-inc.com/issue/43976234
--disable_warnings
drop table if exists t1, t2;
--enable_warnings
create table t1(c1 int, c2 varchar(10));
insert into t1 values(1, '1');
create table t2(c1 int);
insert into t2 values(1), (2);
select t2.*, (select t1.c1 from t1 where t1.c2 REGEXP t2.c1 limit 1 ) from t2;
select t2.*, (select t1.c1 from t1 where t1.c2 REGEXP t2.c1+1-1 limit 1 ) from t2;
drop table t1;
drop table t2;