mysql多表聯查

2021-10-12 13:00:00 字數 1667 閱讀 6750

1.內連線

規則:返回兩個表的公共記錄

語法:

– 語法一

select

*from 表1

inner

join 表2

on 表1.公共字段=表2.公共字段

– 語法二

select

*from 表1,表2

where 表1.公共字段=表2.公共字段

補充:
– 如何實現三表查詢

select

*from 表1

inner

join 表2

on 表1.公共字段=表2.公共字段 inner

join 表3

on 表2.公共字段=表3.公共字段

左外連線

規則:以左邊的表為準,右邊如果沒有對應的記錄用null顯示

語法:

select

*from 表1

left

join 表2

on 表1.公共字段=表2.公共字段

3.右外連線

規則:以右邊的表為準,左邊如果沒有對應的記錄用null顯示

語法:

select

*from 表1

right

join 表2

on 表1.公共字段=表2.公共字段

4.交叉連線

規則:返回笛卡爾積   

語法:

select

*from 表1

cross

join 表2

5.自然連線

規則:自動判斷條件連線,判斷的條件是依據同名字段

語法:

1.自然內連線(natural join)

mysql>

select

*from stuinfo natural

join stumarks;

2.自然左外連線(natural left join)

mysql>

select

*from stuinfo natural

left

join stumarks;

3.自然右外連線(natural right join)

mysql>

select

*from stuinfo natural

right

join stumarks;

小結:

1、表連線是通過同名字段來連線的

2、如果沒有同名字段就返回笛卡爾積

3、同名的連線欄位只顯示乙個,並且將該字段放在最前面

6.using

using用來指定連線字段
mysql> select * from stuinfo inner join stumarks using(stuno);

mysql 多表聯查 MySQL的多表聯查

今天是周二,我們一起來研究下mysql的多表聯查啊。或許你也知道,表之間的關係有 1對1 1對多 多對多。然後.1.巢狀查詢 乙個查詢的結果是另外sql查詢的條件 如 查詢stu表中年齡最大的是誰?mysql select from stu where age select max age from...

mysql多表聯查 mysql 多表聯查 例項

多表查詢 笛卡爾積查詢 笛卡爾積查詢 就是兩張表相乘,若左邊表有m條資訊,右邊表有n條資訊,那麼查詢顯示的資訊總共為m n條,這其中往往包含大量錯誤資料,需要用where 條件來過濾無用資訊 笛卡爾積查詢語句 select from dept,emp id name id name dept id ...

mysql 多表聯查

1.多表連線型別 2.1.笛卡爾積 交叉連線 在 mysql 中可以為 cross join 或者省略 cross 即 join,或 者使用 如 1.select from table1 cross join table2 2.select from table1 join table2 3.sel...