mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 15:50:51 +03:00 
			
		
		
		
	mysql-test/r/analyse.result: test result extended mysql-test/r/cast.result: test result extended mysql-test/r/func_group.result: test result extended mysql-test/r/subselect.result: test result extended mysql-test/t/analyse.test: test extended mysql-test/t/cast.test: test extended mysql-test/t/func_group.test: test extended mysql-test/t/subselect.test: test extended
		
			
				
	
	
		
			112 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			112 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| drop table if exists t1,t2;
 | |
| create table t1 (i int, j int, empty_string char(10), bool char(1), d date);
 | |
| insert into t1 values (1,2,"","Y","2002-03-03"), (3,4,"","N","2002-03-04"), (5,6,"","Y","2002-03-04"), (7,8,"","N","2002-03-05");
 | |
| select count(*) from t1 procedure analyse();
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| count(*)	4	4	1	1	0	0	4.0000	0.0000	ENUM('4') NOT NULL
 | |
| select * from t1 procedure analyse();
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.i	1	7	1	1	0	0	4.0000	2.2361	ENUM('1','3','5','7') NOT NULL
 | |
| test.t1.j	2	8	1	1	0	0	5.0000	2.2361	ENUM('2','4','6','8') NOT NULL
 | |
| test.t1.empty_string			0	0	4	0	0.0000	NULL	CHAR(0) NOT NULL
 | |
| test.t1.bool	N	Y	1	1	0	0	1.0000	NULL	ENUM('N','Y') NOT NULL
 | |
| test.t1.d	2002-03-03	2002-03-05	10	10	0	0	10.0000	NULL	ENUM('2002-03-03','2002-03-04','2002-03-05') NOT NULL
 | |
| select * from t1 procedure analyse(2);
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.i	1	7	1	1	0	0	4.0000	2.2361	TINYINT(1) UNSIGNED NOT NULL
 | |
| test.t1.j	2	8	1	1	0	0	5.0000	2.2361	TINYINT(1) UNSIGNED NOT NULL
 | |
| test.t1.empty_string			0	0	4	0	0.0000	NULL	CHAR(0) NOT NULL
 | |
| test.t1.bool	N	Y	1	1	0	0	1.0000	NULL	ENUM('N','Y') NOT NULL
 | |
| test.t1.d	2002-03-03	2002-03-05	10	10	0	0	10.0000	NULL	ENUM('2002-03-03','2002-03-04','2002-03-05') NOT NULL
 | |
| create table t2 select * from t1 procedure analyse();
 | |
| select * from t2;
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.i	1	7	1	1	0	0	4.0000	2.2361	ENUM('1','3','5','7') NOT NULL
 | |
| test.t1.j	2	8	1	1	0	0	5.0000	2.2361	ENUM('2','4','6','8') NOT NULL
 | |
| test.t1.empty_string			0	0	4	0	0.0000	NULL	CHAR(0) NOT NULL
 | |
| test.t1.bool	N	Y	1	1	0	0	1.0000	NULL	ENUM('N','Y') NOT NULL
 | |
| test.t1.d	2002-03-03	2002-03-05	10	10	0	0	10.0000	NULL	ENUM('2002-03-03','2002-03-04','2002-03-05') NOT NULL
 | |
| drop table t1,t2;
 | |
| EXPLAIN SELECT 1 FROM (SELECT 1) a PROCEDURE ANALYSE();
 | |
| id	select_type	table	type	possible_keys	key	key_len	ref	rows	Extra
 | |
| 1	PRIMARY	<derived2>	system	NULL	NULL	NULL	NULL	1	
 | |
| 2	DERIVED	NULL	NULL	NULL	NULL	NULL	NULL	NULL	No tables used
 | |
| create table t1 (a int not null);
 | |
| create table t2 select * from t1 where 0=1 procedure analyse();
 | |
| show create table t2;
 | |
| Table	Create Table
 | |
| t2	CREATE TABLE `t2` (
 | |
|   `Field_name` varbinary(255) NOT NULL default '',
 | |
|   `Min_value` varbinary(255) default NULL,
 | |
|   `Max_value` varbinary(255) default NULL,
 | |
|   `Min_length` bigint(11) NOT NULL default '0',
 | |
|   `Max_length` bigint(11) NOT NULL default '0',
 | |
|   `Empties_or_zeros` bigint(11) NOT NULL default '0',
 | |
|   `Nulls` bigint(11) NOT NULL default '0',
 | |
|   `Avg_value_or_avg_length` varbinary(255) NOT NULL default '',
 | |
|   `Std` varbinary(255) default NULL,
 | |
|   `Optimal_fieldtype` varbinary(64) NOT NULL default ''
 | |
| ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 | |
| select * from t1 where 0=1 procedure analyse();
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| insert into t1 values(1);
 | |
| drop table t2;
 | |
| create table t2 select * from t1 where 0=1 procedure analyse();
 | |
| show create table t2;
 | |
| Table	Create Table
 | |
| t2	CREATE TABLE `t2` (
 | |
|   `Field_name` varbinary(255) NOT NULL default '',
 | |
|   `Min_value` varbinary(255) default NULL,
 | |
|   `Max_value` varbinary(255) default NULL,
 | |
|   `Min_length` bigint(11) NOT NULL default '0',
 | |
|   `Max_length` bigint(11) NOT NULL default '0',
 | |
|   `Empties_or_zeros` bigint(11) NOT NULL default '0',
 | |
|   `Nulls` bigint(11) NOT NULL default '0',
 | |
|   `Avg_value_or_avg_length` varbinary(255) NOT NULL default '',
 | |
|   `Std` varbinary(255) default NULL,
 | |
|   `Optimal_fieldtype` varbinary(64) NOT NULL default ''
 | |
| ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 | |
| select * from t2;
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| insert into t2 select * from t1 procedure analyse();
 | |
| select * from t2;
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.a	1	1	1	1	0	0	1.0000	0.0000	ENUM('1') NOT NULL
 | |
| insert into t1 values(2);
 | |
| drop table t2;
 | |
| create table t2 select * from t1 where 0=1 procedure analyse();
 | |
| show create table t2;
 | |
| Table	Create Table
 | |
| t2	CREATE TABLE `t2` (
 | |
|   `Field_name` varbinary(255) NOT NULL default '',
 | |
|   `Min_value` varbinary(255) default NULL,
 | |
|   `Max_value` varbinary(255) default NULL,
 | |
|   `Min_length` bigint(11) NOT NULL default '0',
 | |
|   `Max_length` bigint(11) NOT NULL default '0',
 | |
|   `Empties_or_zeros` bigint(11) NOT NULL default '0',
 | |
|   `Nulls` bigint(11) NOT NULL default '0',
 | |
|   `Avg_value_or_avg_length` varbinary(255) NOT NULL default '',
 | |
|   `Std` varbinary(255) default NULL,
 | |
|   `Optimal_fieldtype` varbinary(64) NOT NULL default ''
 | |
| ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 | |
| select * from t2;
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| insert into t2 select * from t1 procedure analyse();
 | |
| select * from t2;
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.a	1	2	1	1	0	0	1.5000	0.5000	ENUM('1','2') NOT NULL
 | |
| drop table t1,t2;
 | |
| create table t1 (v varchar(128));
 | |
| insert into t1 values ('abc'),('abc\'def\\hij\"klm\0opq'),('\''),('\"'),('\\'),('a\0'),('b\''),('c\"'),('d\\'),('\'b'),('\"c'),('\\d'),('a\0\0\0b'),('a\'\'\'\'b'),('a\"\"\"\"b'),('a\\\\\\\\b'),('\'\0\\\"'),('\'\''),('\"\"'),('\\\\'),('The\ZEnd');
 | |
| select * from t1 procedure analyse();
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.v	"	\\	1	19	0	0	3.7619	NULL	ENUM('"','""','"c','\'\0\\"','\'','\'\'','\'b','a\0\0\0b','a\0','a""""b','a\'\'\'\'b','abc','abc\'def\\hij"klm\0opq','a\\\\\\\\b','b\'','c"','d\\','The\ZEnd','\\','\\d','\\\\') NOT NULL
 | |
| drop table t1;
 | |
| create table t1 (df decimal(5,1));
 | |
| insert into t1 values(1.1);
 | |
| insert into t1 values(2.2);
 | |
| select * from t1 procedure analyse();
 | |
| Field_name	Min_value	Max_value	Min_length	Max_length	Empties_or_zeros	Nulls	Avg_value_or_avg_length	Std	Optimal_fieldtype
 | |
| test.t1.df	1.1	2.2	8	8	0	0	1.650000000	0.302500000	ENUM('1.1','2.2') NOT NULL
 | |
| drop table t1;
 |