iT邦幫忙

4

程式設計師之入門基礎必備知識(14)-SQL基礎概念(中)

終於員工旅遊回來了,有50%都在車上真的是有點沒休閒到,畢竟從台北殺到台中東勢大雪山,好遙遠但是也不錯,,以上是我自導自編,針對菜鳥入門程式設計師需要學習心態與哪些基礎技巧。
今天要講到最重要的SQL,叫做JOIN(連接),為什麼這個很重要,因為一個TABLE絕對不可能包含所有的資料,因為這樣資料很混亂,而且可能會有重復的問題,所以有些資料都會給一個叫做唯一序號的東西,例如像身分證,這是一個絕對不會有重復的資料,如果有那戶政真的打屁股了,這是識別國人很重要的身分之一,當然唯一序不只有身分證,也可以多個欄位組成,例如年度+學號也可以組成唯一序,只要能識別他是唯一就是先決條件,首先先給各位兩個TABLE,當作範例。

1.JOIN

ID      NAME    TEL     ADDR
001	泰大	110	神之領域1號
002	老鷹	119	樹上洞穴13巷2號
003	法師	168	魔界39號洞穴
004	總裁	165	無我境界25號

ID      AGE     SEX
001	35	boy
002	23	boy
003	39	grils

先不理解join的原理如何,看圖比較容易了解,講這麼多不如看結果

看到上面只光用join就跑出一堆資料,而且還重復內容,是不是感覺很奇怪,join的功能其實白話舉立一下,學生有基本資料,但是成績卻有不同科別的區分,每個分數都在不同老師的掌控下,如果你要將一個學生的資料加上成績,那就會像這樣!!學生資料+各科成績,這樣就可以讓資料帶出來。
上面因為我們的基本資料有四個人,可是年齡資料實際登入卻只有三個人,所以結果就會像這樣4*3=12筆,會有重復的三筆年齡資料,分別出現在四個人,這樣完全是不對的資料,所以之前提的唯一序就出現了,因為登打成績的老師一定知道你是誰,而且也會有你的學號,這樣他就可以把成績登記在你的名字下,所以串起來就像這樣。

其中還有例外一個叫外部連結,明天待續

2.SUBSTR抓取特定資料
首先先看範例

使用SUBSTR(NAME,從第幾位開始,抓取多少位)


其他文章連結處,可以找尋到先前發文的位置
http://ithelp.ithome.com.tw/ironman6/player/ianianwu/other/1


1 則留言

0
老鷹(eagle)
iT邦高手 1 級 ‧ 2013-10-16 11:46:01

老鷹 119 樹上洞穴13巷2號

驚

我要留言

立即登入留言