mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-30 04:26:45 +03:00 
			
		
		
		
	 39b0712cf7
			
		
	
	39b0712cf7
	
	
	
		
			
			new file mysql_fix_privilege_tables.sql, mysql_create_system_tables.sh: Adding true BINARY/VARBINARY: fixing "password" type, not to be 0x00-padding. Many files: Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes. Adding true BINARY/VARBINARY: new pad_char structure member. ctype-bin.c: Adding true BINARY/VARBINARY: new pad_char structure member. New strnxfrm, with two trailing length bytes. field.cc: Adding true BINARY/VARBINARY.
		
			
				
	
	
		
			144 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			144 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| drop table if exists t1,t2;
 | |
| create table t1 (name char(20) not null, primary key (name));
 | |
| create table t2 (name char(20) binary not null, primary key (name));
 | |
| insert into t1 values ("å");
 | |
| insert into t1 values ("ä");
 | |
| insert into t1 values ("ö");
 | |
| insert into t2 select * from t1;
 | |
| select * from t1 order by name;
 | |
| name
 | |
| å
 | |
| ä
 | |
| ö
 | |
| select concat("*",name,"*") from t1 order by 1;
 | |
| concat("*",name,"*")
 | |
| *å*
 | |
| *ä*
 | |
| *ö*
 | |
| select min(name),min(concat("*",name,"*")),max(name),max(concat("*",name,"*")) from t1;
 | |
| min(name)	min(concat("*",name,"*"))	max(name)	max(concat("*",name,"*"))
 | |
| å	*å*	ö	*ö*
 | |
| select * from t2 order by name;
 | |
| name
 | |
| ä
 | |
| å
 | |
| ö
 | |
| select concat("*",name,"*") from t2 order by 1;
 | |
| concat("*",name,"*")
 | |
| *ä*
 | |
| *å*
 | |
| *ö*
 | |
| select min(name),min(concat("*",name,"*")),max(name),max(concat("*",name,"*")) from t2;
 | |
| min(name)	min(concat("*",name,"*"))	max(name)	max(concat("*",name,"*"))
 | |
| ä	*ä*	ö	*ö*
 | |
| select name from t1 where name between 'Ä' and 'Ö';
 | |
| name
 | |
| ä
 | |
| ö
 | |
| select name from t2 where name between 'ä' and 'ö';
 | |
| name
 | |
| ä
 | |
| å
 | |
| ö
 | |
| select name from t2 where name between 'Ä' and 'Ö';
 | |
| name
 | |
| drop table t1,t2;
 | |
| create table t1 (a char(10) not null, b char(10) binary not null,key (a), key(b));
 | |
| insert into t1 values ("hello ","hello "),("hello2 ","hello2 ");
 | |
| select concat("-",a,"-",b,"-") from t1 where a="hello";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| select concat("-",a,"-",b,"-") from t1 where a="hello ";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| select concat("-",a,"-",b,"-") from t1 ignore index (a) where a="hello ";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| select concat("-",a,"-",b,"-") from t1 where b="hello";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| select concat("-",a,"-",b,"-") from t1 where b="hello ";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| select concat("-",a,"-",b,"-") from t1 ignore index (b) where b="hello ";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| alter table t1 modify b tinytext not null, drop key b, add key (b(100));
 | |
| select concat("-",a,"-",b,"-") from t1;
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| -hello2-hello2-
 | |
| select concat("-",a,"-",b,"-") from t1 where b="hello ";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| select concat("-",a,"-",b,"-") from t1 ignore index (b) where b="hello ";
 | |
| concat("-",a,"-",b,"-")
 | |
| -hello-hello-
 | |
| drop table t1;
 | |
| create table t1 (b char(8));
 | |
| insert into t1 values(NULL);
 | |
| select b from t1 where binary b like '';
 | |
| b
 | |
| select b from t1 group by binary b like '';
 | |
| b
 | |
| NULL
 | |
| select b from t1 having binary b like '';
 | |
| b
 | |
| drop table t1;
 | |
| create table t1 (a char(3) binary, b binary(3));
 | |
| insert into t1 values ('aaa','bbb'),('AAA','BBB');
 | |
| select upper(a),upper(b) from t1;
 | |
| upper(a)	upper(b)
 | |
| AAA	bbb
 | |
| AAA	BBB
 | |
| select lower(a),lower(b) from t1;
 | |
| lower(a)	lower(b)
 | |
| aaa	bbb
 | |
| aaa	BBB
 | |
| select * from t1 where upper(a)='AAA';
 | |
| a	b
 | |
| aaa	bbb
 | |
| AAA	BBB
 | |
| select * from t1 where lower(a)='aaa';
 | |
| a	b
 | |
| aaa	bbb
 | |
| AAA	BBB
 | |
| select * from t1 where upper(b)='BBB';
 | |
| a	b
 | |
| AAA	BBB
 | |
| select * from t1 where lower(b)='bbb';
 | |
| a	b
 | |
| aaa	bbb
 | |
| select charset(a), charset(b), charset(binary 'ccc') from t1 limit 1;
 | |
| charset(a)	charset(b)	charset(binary 'ccc')
 | |
| latin1	binary	binary
 | |
| select collation(a), collation(b), collation(binary 'ccc') from t1 limit 1;
 | |
| collation(a)	collation(b)	collation(binary 'ccc')
 | |
| latin1_bin	binary	binary
 | |
| drop table t1;
 | |
| create table t1( firstname char(20), lastname char(20));
 | |
| insert into t1 values ("john","doe"),("John","Doe");
 | |
| select * from t1 where firstname='john' and firstname like binary 'john';
 | |
| firstname	lastname
 | |
| john	doe
 | |
| select * from t1 where firstname='john' and binary 'john' = firstname;
 | |
| firstname	lastname
 | |
| john	doe
 | |
| select * from t1 where firstname='john' and firstname = binary 'john';
 | |
| firstname	lastname
 | |
| john	doe
 | |
| select * from t1 where firstname='John' and firstname like binary 'john';
 | |
| firstname	lastname
 | |
| john	doe
 | |
| select * from t1 where firstname='john' and firstname like binary 'John';
 | |
| firstname	lastname
 | |
| John	Doe
 | |
| drop table t1;
 | |
| create table t1 (a binary);
 | |
| show create table t1;
 | |
| Table	Create Table
 | |
| t1	CREATE TABLE `t1` (
 | |
|   `a` binary(1) default NULL
 | |
| ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 | |
| drop table t1;
 |