介紹sql連線多表進行查詢,包括對inner join、left join、right join等的基礎使用
例項用以下兩張表進行演示
student表結構如下圖
teacher表結果如下圖
兩張表以id為主外來鍵關係進行關聯
作用:inner join 關鍵字在表中存在至少乙個匹配時返回行,使用inner join和使用join的效果是一樣的例項:選取student表中的id值與teacher表中id值相等的資料
select * from student t inner join teacher t1 on t.id=t1.id;
返回結果如下:
使用join進行查詢:select * from student t join teachet t1 on t.id=t1.id;
此時返回的結果是一樣的如下圖:
作用:選取左表全部的資料,對於右表中沒有匹配的記錄,則結果為null以下例項中使用student為左表,teacher為右表進行查詢資料
select * from student t left join teacher t1 on t.id=t1.id
返回結果如下圖:
備註:查詢結果中,id為a0006和a0008的資料在teacher表中沒有記錄,故顯示為null
作用:選取右表全部的資料,對於左表中沒有匹配的記錄,則結果為null備註:查詢結果中,id值為a0006和a0008的資料在對應左表中不存在資料,則顯示為nul以下例項中使用student為右表,teacher為左表進行查詢資料
select * from teacher t right join student t1 on t.id=t1.id
返回結果如下圖:
sql查詢語句 連線語句
若乙個查詢同時涉及兩個以上的表,則稱之為連線查詢。它包括等值連線,非等值連線,自然連線,自身連線,外連線和復合條件連線 表名1.列名1 連線運算子 表名2.列名2 當連線運算子為等號 時,稱為等值連線 使用其它運算子時,稱為非等值連線。若在等值連線中把目標列中重複的屬性列去掉則為自然連線。查詢每個學...
SQL連線查詢語句
1.left join left join是以a表的記錄為基礎的,a可以看成左表,b可以看成右表,left join是以左表為準的.換句話說,左表 a 的記錄將會全部表示出來,而右表 b 只會顯示符合搜尋條件的記錄 例子中為 a.aid b.bid b表記錄不足的地方均為null.2.right j...
sql基礎 sql連線查詢
這兩天在專案中寫連線查詢的時候突然回憶了一下各種連線查詢的語法 結果等,發現自己出了經常用的left join on 和等值連線以外其他的都不是很確定,於是乎就看看了相關的資料便有了這篇博文。sql 92標準所定義的from子句的連線語法格式為 fromjoin tablejoin typejoin...