連接:
多表查詢需要先對關系表進行外鍵約束,再通過內 / 外連接查詢方式進行表的關聯查詢
即多表查詢所需兩個先提條件:
- 表間有主外鍵關系
- 通過連接查詢方式
一對多:
alter table tb_product add constraint foreign key (category_id) references tb_category (cid);
alter table 從表名 add constraint foreign key (外鍵) references 主表 (主鍵);

多對多:
同:語法與一對多語法一致
異:兩表之間需要一個中間表來連接兩表(中間表至少需要兩個外鍵列)
alter table teacher_student add constraint foreign key
(student_id) references student(sid);
alter table teacher_student add constraint foreign key
(teacher_id) references teacher(tid);

一對一:即表的 自連接
由于博主對此概念暫不明了,此處不深入
查詢格式:
隱式內連接:
select * | 列 from 表1,表2,表3…
where 表1.主鍵=表2.外鍵,表2.主鍵=表3.外鍵,…;
顯式內連接:
select * | 列 from 表1
inner join 表2 on 表1.主鍵=表2.外鍵
inner join 表3 on 表2.主鍵=表3.外鍵
…
;
左外連接:
select * | 列 from 表1
left outer join 表2 on 表1.主鍵=表2.外鍵
left outer join 表3 on 表2.主鍵=表3.外鍵
…
;
右外連接:
select * | 列 from 表1
right outer join 表2 on 表1.主鍵=表2.外鍵
right outer join 表3 on 表2.主鍵=表3.外鍵
…
;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/46285.html
標籤:其他
上一篇:Mysql系列第八講 詳解排序和分頁(order by & limit)及存在的坑
下一篇:SQL陳述句的一些應用陳述句
