sql語句-關於自身表連線之join與left join
阿新 • • 發佈:2019-02-12
1、建立表
drop table if exists t_user;
create table t_user(
id int(11) not null auto_increment,
user_id int(11),
user_name varchar(100),
primary key(id)
)engine=Innodb default charset=utf8;
2、插入測試資料
insert into t_user values(1,1,'admin');
insert into t_user values(2,2,'superadmin');
3、表自身關聯-join
select * from t_user t1 join (select * from t_user) t2 on t1.id=1 and t2.id=2
4、表自身關聯-left join
select * from t_user t1 left join (select * from t_user) t2 on t1.id=1 and t2.id=2
總結:
1)表的自關聯是通過把一個表命名不同的名稱,然後找到想要關聯的關係進行關聯;
2)左連線left join查詢出來的結果不僅僅是on 後面條件關聯的資料,還包括條件中沒有關聯到的但是左邊的select查詢到的結果,沒有關聯到的資料部分用NULL填充。