2017年11月26日 星期日

[SQL]Join的觀念

最近工作寫SQL時,突然發現一個有趣的觀念會讓人搞混與疑惑。
例如說JOIN的觀念。
畢竟JOIN可以說有幾類
inner join
left join
right join
full join

這四項。

其實一般最常被使用的就是INNER JOIN。
如:
select * from student a,course b where a.s_id=b.s_id
這樣的寫法其實就是
select * from student a inner join course b on a.s_id=b.s_id

至於結果呢!
就是所謂的有AB交集的才顯示

其二LEFT JOIN
就是以左邊為主,左邊資料表全數顯示,右邊資料表有對應到的話就是顯示資料,沒對應到的話就是顯示空白。
以數學就是A再加上AB交集的區域

其三RIGHT JOIN
使用方式與LEFT JOIN一樣,但方向剛好相反。
以數學說明就是B再加上BA交集區

其四FULL JOIN
顧名思義就是全部一起來。
就是所謂的聯集拉,有對道就顯示資料沒對道就給她空白值

一般大概就是這四種吧,別再搞混了喔。
懶得畫表個,因此今天只有簡單說明觀念。

沒有留言:

張貼留言

[人生分享]教育訓練的兩極化

教育訓練的一個成長的過程,這句話相信人人都聽說過,而訓練最後一階段就是訓練者放手,被訓練者獨力完成所有任務,甚至是獨立判斷與進行,並達到預期結果,而這樣的過程後就會出現被訓練的學員們,慢慢的技能會超過訓練師,此時就會有兩種極端的表現是出現。 一、給予訓練師的基本尊重 二、認定訓練...