Multi-table join query

  1. Inner join query
  2. Outer join query
  3. Merge query results
  4. subquery
1 建表语句:
2 drop table if exists t_dept;
3 create table t_dept(
4 _id int primary key,
5 deptno int(11),
6 dname varchar(20),
7 loc varchar(50));
1  Insert data statement:
 2  insert into t_dept
 3  (_id,deptno,dname,loc)
 4  values
 ​​5 ('1','10','ACCOUNTING','NEW YORK' ),
 6 ('2','20' ,'RESEARCH','DALLAS' ),
 7 ('3','30','SALES','CHICAGO' ),
 8 ('4','40','OPERATIONS','BOSTON')

 

1. Inner join

 1 方法1:
 2 select t1.ename,t1.job,t2.ename 
 3 from
 4       t_employee t1,
 5       t_employee t2 
 6 where
 7         t1.mgr = t2.empno; 
 8 
 9 
10 方法2:
11 select t1.ename,t1.job,t2.ename
12 from t_employee t1
13 inner join t_employee t2 on t1.mgr = t2.empno;

 

2. External link query

1  Left outer join, left left as main table
 2  select t1.ename, t1.job, t2.ename as mgr_name
 3  from t_employee t1
 4 left outer t_employee t2 on t1.mgr = t2.empno;
 5  
6  Right outer join
 7  select t1.empno,t1.ename,t1.job,t2.dname,t2.loc
 8  from t_employee t1
 9 right outer t_dept t2 on t1.deptno = t2.deptno;

 

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326679368&siteId=291194637
Recommended