38 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| --disable_query_log
 | |
| set @@session.explicit_defaults_for_timestamp=off;
 | |
| --enable_query_log
 | |
| # owner: bin.lb
 | |
| # owner group: SQL1
 | |
| # tags: join
 | |
| # description:
 | |
| # join using case
 | |
| #
 | |
| 
 | |
| --disable_warnings
 | |
| drop table if exists tjuo1,tjuo2,tjuo3;
 | |
| --enable_warnings
 | |
| create table tjuo1 (pk int,c1 int, primary key(pk));
 | |
| create table tjuo2 (pk int,c1 int, c2 int, primary key(pk));
 | |
| create table tjuo3 (pk int,c2 int, primary key(pk));
 | |
| insert into tjuo1 values(1, 11), (2, 12), (3, 13);
 | |
| insert into tjuo2 values(4, 11, 21), (5, 12, 22), (6, 13, 23);
 | |
| insert into tjuo3 values(7, 21), (8, 22), (9, 23);
 | |
| select * from tjuo1;
 | |
| select * from tjuo2;
 | |
| select * from tjuo3;
 | |
| 
 | |
| #2T
 | |
| SELECT * FROM tjuo1 JOIN  (SELECT * FROM tjuo2) as tjuo2_alias  on tjuo1.c1= tjuo2_alias.c1;
 | |
| SELECT * FROM tjuo1 RIGHT JOIN (SELECT * FROM tjuo2) as tjuo2_alias  USING (c1);
 | |
| 
 | |
| #3T
 | |
| SELECT * FROM tjuo1 JOIN tjuo2 on tjuo1.c1=tjuo2.c1 JOIN tjuo3 on tjuo2.c2=tjuo3.c2;
 | |
| SELECT * FROM tjuo1 RIGHT JOIN tjuo2 USING (c1) RIGHT JOIN tjuo3 USING (c2);
 | |
| SELECT * FROM tjuo1 RIGHT JOIN (SELECT * FROM tjuo2) as tjuo2_alias USING (c1) RIGHT JOIN tjuo3 USING (c2);
 | |
| SELECT * FROM  (SELECT * FROM tjuo1) tjuo1_alias RIGHT JOIN (SELECT * FROM tjuo2) as tjuo2_alias USING (c1) RIGHT JOIN (SELECT * FROM tjuo3) as tjuo3_alias USING (c2);
 | |
| SELECT * FROM  (SELECT * FROM tjuo1) tjuo1_alias RIGHT JOIN tjuo2  USING (c1) RIGHT JOIN (SELECT * FROM tjuo3) as tjuo3_alias USING (c2);
 | |
| SELECT * FROM  (SELECT c2 FROM tjuo1 as i1 JOIN (SELECT * FROM tjuo2) as i2 USING (c1) ) as t12 RIGHT JOIN (SELECT * FROM tjuo3) as tjuo3_alias USING (c2);
 | |
| SELECT * FROM  (SELECT c2 FROM tjuo1 as i1 JOIN (SELECT * FROM tjuo2) as i2 USING (c1) ) as t12;
 | |
| drop table tjuo1, tjuo2, tjuo3;
 | |
| 
 | 
