摘自:
表連線分為:cross join、innert join、outer join、self join。
一、cross join 交叉連線
cross join連線用於生成兩張表的笛卡爾集。
1、返回的記錄數為兩個表的記錄數乘積。比如,a表有n條記錄,b表有m條記錄,則返回n*m條記錄。
2、將a表的所有行分別與b表的所有行進行連線。
二、inner join 內連線
內連線就是關聯的兩張或多張表中,根據關聯條件,顯示所有匹配的記錄,匹配不上的,不顯示。
1、--也可以省略inner關鍵字,直接寫join
2、--如果兩張表的關聯欄位名相同,也可以使用using子句。
三、outer join 外連線
外連線,又分為:(-如果兩張表的關聯欄位名相同,也可以使用using子句)
1.left outer join/left join(左外連線)
2.right outer join/right join(右外連線)
3.full outer join/full join(全外連線)
1.left outer join/left join(左外連線)
左外連線就是關聯的兩張或多張表中,根據關聯條件,顯示匹配的記錄,左表中有的記錄,但是右表中沒有匹配上的,以空(null)顯示。
left outer join也可以簡寫成left join,效果是一樣的。
2.right outer join/right join(右外連線)
右外連線就是關聯的兩張或多張表中,根據關聯條件,顯示匹配的記錄。右表中有的記錄,但是左表中沒有匹配上的,以空(null)顯示。
right outer join也可以簡寫成right join,效果是一樣的。
3.full outer join/full join(全外連線)
全外連線就是關聯的兩張或多張表中,根據關聯條件,顯示所有匹配和不匹配的記錄。(m + n)
左表中有的記錄,但是右表中沒有匹配上的,以空(null)顯示。右表中有的記錄,但是左表中沒有匹配上的,也以空(null)顯示。
full outer join也可以簡寫成full join,效果是一樣的。
四、self join 自連線
自連線,就是把一張表取兩個別名,當做兩張表來使用,自己和自己關聯。(一般不用)
可以修改為
五、natural join 自然連線
對兩張表中名稱、資料型別都相同的字段進行等值連線,並返回符合條件的結果
兩張表的相同的字段不能超過 11 個。
eg: select select_list from table1 natural join tabl2
六、總結
表連線分為:
1.cross join:顯示迪卡爾積。
2.innert join:顯示所有匹配的項。
3.outer join
外連線又分為:
1) left outer join/left join:顯示左表的所有項,右表沒有匹配的項,則以null顯示。
2) right outer join/right join:顯示右表的所有項,左表沒有匹配的項,則以null顯示。
3) full outer join/full join:顯示所有匹配和不匹配的項,左右兩張表沒有匹配的,都以null顯示。
4.self join:把一張表取兩個別名,當做兩張表來使用,自己和自己關聯。
5、natural join: 把兩張表根據同名稱、同資料型別的字段進行連線起來,返回匹配的項。
學習隨記3 SQL複習
dml 資料操作語言 ddl 資料定義語言 select 獲取資料 update 更新資料 delete 從資料表中刪除資料 insert into 插入資料 select distinct 列 from 表 返回唯一不同的值 select 列 from 表 where 列 運算子 值 篩選 ord...
五 效能監視(3)SQL跟蹤
一 概念 1.sql跟蹤 sql trace sql server 的底層有乙個事件子系統,稱為sql trace。dba可能通過這個事件子系統捕捉與sql server例項中可能發生的200多個事件有關的資訊。sql server profiler是乙個圖形化工具,提供了sql trace子系統最...
網路安全部落格3 sql注入
1.準備 工具 sqlmap 需在python環境中執行 環境 windows python 安裝sqlmap 官網 選擇最近版本安裝即可 安裝sqlmap 官網 選擇最近版本安裝即可 設定環境變數 為了使用便利,將sqlmap的安裝目錄新增到系統環境變數path中 之後在cmd中就可以直接使用sq...