MySQL高階查詢 連線查詢例項

2021-08-02 11:07:26 字數 2007 閱讀 4626

使用sql查詢很簡單,很基礎的sqlect語句查詢。如果想從多個表查詢比較複雜的資訊,就會使用高階查詢實現。

常見的高階查詢包括多連線查詢,外連線查詢與組合查詢等,今天我先學習最常用的連線查詢。

我先以一張person表(id,name,phone,age)與乙個student表(id,name,***,qq,email)演示:

person表:

student表:

一 內連線(inner join)

1:等值連線:指使用等號」=」比較兩個連線列的值,相當於兩表執行迪卡爾後,取兩表連線列相等的紀錄。

語法:

select 列 from 表1 inner join 表2 on 表1.列 = 表2.列
示例:

select a.*,b.* from person a inner join student b on a.id = b.id
結果:

2:非等值連線:指使用大於號」>」 或小於號」

語法:

select 列 from 表1 inner join 表2 on 表1.列 >(
示例:

select a.*,b.* from person a inner join student b on a.id > b.id
結果:

二, 外連線

1,左外連線(left outer join):指將左表的所有記錄與右表符合條件的記錄,返回的結果除內連線的結果,還有左表不符合條件的記錄,並在右表相應列中填null。

示例: select a.,b. from person a left join student b on a.id = b.id

結果:

2:右外連線(right outer join):與左外連線相反,指將右表的所有記錄與左表符合條件的記錄,返回的結果除內連線的結果,還有右表不符合條件的記錄,並在左表相應列中填null。

示例: select a.,b. from person a right join student b on a.id = b.id

結果:

3:全外連線(full join)——–mysql不支援:指將左表所有記錄與右表所有記錄進行連線,返回的結果除內連線的結果,還有左表與右表不符合條件的記錄,並在左表與右表相應列中填null。

三:自然連線(natural join):指自動將表中相同名稱的列進行記錄匹配。

示例:

select  a.*,b.*   from person a  natural join student b
結果:

四:自連線:指用表的別名實現表自身的連線。

示例:

select b.* from person a,student b where a.id = b.id and b.age > 15
結果:

mysql連線查詢例項 MySQL連線查詢例項詳解

建立表suppliers create table suppliers s id int not null auto increment,s name char 50 not null,s city char 50 null,s zip char 10 null,s call char 50 not...

mysql連線查詢例項 MySQL連線查詢例項詳解

建立表suppliers create table suppliers s id int not null auto increment,s name char 50 not null,s city char 50 null,s zip char 10 null,s call char 50 not...

mysql連線查詢例項 例項講解MySQL連線查詢

mysql連線查詢相信大家都有所了解,連線查詢是在資料庫查詢操作的時候肯定要用到的,下面就為您介紹mysql連線查詢的用法,供您參考學習。首先我們做兩張表 員工資訊表和部門資訊表,在此,表的建立只為講述連線的概念,所以字段非常的簡單 employeetb 員工資訊表 employeeid emplo...