第一章:數(shù)據(jù)庫基礎(chǔ)
這章里面講了什么是數(shù)據(jù)庫,什么是表,什么是列,什么是行,什么是數(shù)據(jù)類型,真的有夠煩人的。這里概念不知道已經(jīng)在多少本書里面被重復(fù)過多少遍了。但是,請(qǐng)不久看網(wǎng)上一個(gè)介紹Google面試題的帖子,第一題好像就是:請(qǐng)用三句話向你8歲的侄子說明什么是數(shù)據(jù)庫? 汗...
主鍵應(yīng)該具備的條件:每行必須有一個(gè)主鍵值,任意兩行的主鍵值不能相同,主機(jī)不允許修改,更新和重用(即使當(dāng)前行被刪除,當(dāng)前行主鍵也不能再次賦予新行)
第二章:檢索數(shù)據(jù)
這章是介紹Select語句的,內(nèi)容簡(jiǎn)單。
注意一下SQL格式問題:
1.Sql語句處理時(shí),其中所有空格是被忽略的。Sql可以寫一行也可以寫多行。適當(dāng)?shù)姆指舫啥嘈锌梢苑奖汩喿x和調(diào)試。
2.單條Sql語句結(jié)束的時(shí)候不需要“;”來結(jié)束,但是多條語句是需要“;”來分隔。其實(shí)每條都加上;號(hào)結(jié)束是個(gè)好的習(xí)慣。但是有些DBMS有些癖好,如SybaseAdaptiveServer不允許Sql語句以分號(hào)結(jié)束.
3.Sql語句本身的關(guān)鍵字是不區(qū)分大小寫的,但是數(shù)據(jù)庫元素標(biāo)識(shí)如表名,列名等是要求區(qū)分的.
第三章:排序檢索數(shù)據(jù)
這章介紹Order by子句,平時(shí)也有,但是有些地方還是要注意
1.Order by子句只能是Select語句的最后一個(gè)子句。
2.Order by可以通過使用受限制的非選擇列來排序。限制在于這些非選擇列必須是當(dāng)前查找范圍內(nèi)的
3.Order by可以對(duì)多列排序,默認(rèn)每列是升序的,如果要調(diào)整則每列都要調(diào)整。
降序Desc(Descending),升序Asc(Ascending).
4.Order by子句是安裝字典順序排序的,一般DBMS字典順序中認(rèn)為A和a是一樣的,這個(gè)可以通過DBA來說設(shè)置。
第四章:過濾數(shù)據(jù)
這章介紹Where子句,用Sql沒有不用這個(gè)的了。
1.Where子句操作符有兩個(gè)字符形式的操作符,BETWEEN 和 IS NULL;
第五章:高級(jí)數(shù)據(jù)過濾
這章介紹了與Where子句搭配的幾個(gè)操作符,And ,Or,In,Not
1.組合Where子句可以通過And 和 Or關(guān)鍵字。一般而言,SQL在出來Or操作符前會(huì)先出來And操作符。這樣就可能帶來計(jì)算優(yōu)先級(jí)的問題,解決這個(gè)問題的方法是通過圓括號(hào)來標(biāo)識(shí)。
2.IN操作符適合使用在長的合法選項(xiàng)清單的時(shí)候,可以替代多個(gè)Or操作符。而且In操作符一般比Or操作符的組合執(zhí)行要快。IN操作符最大的好處是IN操作符可以包含Select語句。
第六章:用通配符進(jìn)行過濾
SQL里面的通配符比起正則簡(jiǎn)單多了,基本上用的是下面幾個(gè)
1.%:匹配任意多個(gè)字符
2._:匹配一個(gè)字符
3.[]:匹配在某個(gè)范圍在的字符;[^]:匹配不在某個(gè)字符范圍內(nèi)的字符
4.一般而言通配符過濾執(zhí)行比較慢,所有應(yīng)該盡量先執(zhí)行其他過濾縮小過濾范圍后再使用通配符過濾.
先寫這么多,呆會(huì)要出工了。
平凡而簡(jiǎn)單的人一個(gè),無權(quán)無勢(shì)也無牽無掛。一路廝殺,只進(jìn)不退,死而后已,豈不爽哉!
收起對(duì)“車”日行千里的羨慕;收起對(duì)“馬”左右逢緣的感嘆;目標(biāo)記在心里面,向前進(jìn)。一次一步,一步一腳印,跬步千里。
這個(gè)角色很適合現(xiàn)在的我。