返回兩個表的笛卡爾積:select * from a,b
比如a的id有,b的aid有,得到的資料:
id .....aid.....
1 2
1 3
1 4
2 2
.... ....
3 3
3 4
就是加了條件的交叉連線:select * from a,b where a.id = b.aid
比如a的id有,b的aid有,得到的資料:
id........a表資料(不含id)........aid........b表資料(不含aid)
2 不為空 2 不為空
3 不為空 3 不為空
返回兩個表的交集:
(1).select *from a inner join b on a.id = b.aid-----------得到的資料和隱式內連線一樣
(2).select *from a inner join b using (id)----------當b表中的外鍵名等於a表的主鍵名時使用,查詢結果只有乙個id欄位的值
比如a的id有,b的id有,得到的資料:
id........a表資料(不含id)........b表資料(不含aid)
2 不為空 不為空
3 不為空 不為空
返回兩個表的並集
select *from a left outer join b on a.id = b.aid
返回a和b的並集,比如a的id有,b的oid有,返回的是,id為1的記錄中b表資訊為空
id........a表資料(不含id)........aid........b表資料(不含aid)
1 不為空 空 空
2 不為空 2 不為空
3 不為空 3 不為空
select *from a right outer join b on a.id = b.aid
返回a和b的並集,比如a的id有,b的oid有,返回的是,id為4的記錄中a表資訊為空
id........a表資料(不含id)........aid........b表資料(不含aid)
2 不為空 2 不為空
3 不為空 3 不為空
空 空 4 不為空
SQL多表連線查詢
本文主要列舉兩張和三張表來講述多表連線查詢。新建兩張表 表1 student 截圖如下 表2 course 截圖如下 此時這樣建表只是為了演示連線sql語句,當然實際開發中我們不會這樣建表,實際開發中這兩個表會有自己不同的主鍵。一 外連線 外連線可分為 左連線 右連線 完全外連線。1 左連線 lef...
SQL多表連線查詢
本文主要列舉兩張和三張表來講述多表連線查詢。新建兩張表 表1 student 截圖如下 表2 course 截圖如下 此時這樣建表只是為了演示連線sql語句,當然實際開發中我們不會這樣建表,實際開發中這兩個表會有自己不同的主鍵。一 外連線 外連線可分為 左連線 右連線 完全外連線。1 左連線 lef...
SQL多表連線查詢
本文主要列舉兩張和三張表來講述多表連線查詢。新建兩張表 表1 student 截圖如下 表2 course 截圖如下 此時這樣建表只是為了演示連線sql語句,當然實際開發中我們不會這樣建表,實際開發中這兩個表會有自己不同的主鍵。一 外連線 外連線可分為 本文主要列舉兩張和三張表來講述多表連線查詢。新...