join 子句用於把來自兩個或多個表的行結合起來,基於這些表之間的共同字段。
select
*from t join t2
on t.id = t2.id;
(inner) join,內連線,只連線匹配的行。
left (outer) join,左外連線,返回左表的全部行和右表滿足 on 條件的行,如果左表的行在右表中沒有匹配,那麼留作 null.
right (outer) join,右外連線。
full (outer) join,全連線,mysql 中不支援。
hash join,選擇乙個 inner 表來構造雜湊表,然後對 outer 表的每一行資料都去這個雜湊表中查詢是否有匹配的資料。
index lookup join,每次取得 outer 表中的一批資料,使用索引在 inner 表中進行快速匹配。
從 outer 表中取一批資料,設為 b;
通過 join key 以及 b 中的資料構造 inner 表取值範圍,只讀取對應取值範圍的資料,設為 s;
對 b 中的每一行資料,與 s 中的每一條資料執行 join 操作並輸出結果;
重複步驟 1,2,3,直至遍歷完 outer 表中的所有資料。
sort merge join,將 join 的兩個表,首先根據連線屬性進行排序,然後進行一次掃瞄歸併, 進而就可以得出最後的結果。
一般在連線列為索引列的情況下可以考慮選擇使用 smj。
iOS的動畫效果型別及實現方法
實現ios漂亮的動畫效果主要有兩種方法,一種是uiview層面的,一種是使用catransition進行更低層次的控制,uiview beginanimations curl context nil 動畫開始 uiview setanimationduration 0.75 uiview setan...
iOS的動畫效果型別及實現方法
實現ios漂亮的動畫效果主要有兩種方法,一種是uiview層面的,一種是使用catransition進行更低層次的控制,uiview beginanimations curl context nil 動畫開始 uiview setanimationduration 0.75 uiview setan...
iOS的動畫效果型別及實現方法
實現ios漂亮的動畫效果主要有兩種方法,一種是uiview層面的,一種是使用catransition進行更低層次的控制,uiview beginanimations curl context nil 動畫開始 uiview setanimationduration 0.75 uiview setan...