讀《SQL必知必會》所得 ONE

第一章:數據庫基礎

這章裏面講了什麼是數據庫,什麼是表,什麼是列,什麼是行,什麼是數據類型,真的有夠煩人的。這裏概念不知道已經在多少本書裏面被重複過多少遍了。但是,請不久看網上一個介紹Google面試題的帖子,第一題好像就是:請用三句話向你8歲的侄子說明什麼是數據庫? 汗...

主鍵應該具備的條件:每行必須有一個主鍵值,任意兩行的主鍵值不能相同,主機不允許修改,更新和重用(即使當前行被刪除,當前行主鍵也不能再次賦予新行)

第二章:檢索數據

這章是介紹Select語句的,內容簡單。

注意一下SQL格式問題:
1.Sql語句處理時,其中所有空格是被忽略的。Sql可以寫一行也可以寫多行。適當的分隔成多行可以方便閱讀和調試。
2.單條Sql語句結束的時候不需要“;”來結束,但是多條語句是需要“;”來分隔。其實每條都加上;號結束是個好的習慣。但是有些DBMS有些癖好,如SybaseAdaptiveServer不允許Sql語句以分號結束.
3.Sql語句本身的關鍵字是不區分大小寫的,但是數據庫元素標識如表名,列名等是要求區分的.

第三章:排序檢索數據

這章介紹Order by子句,平時也有,但是有些地方還是要注意

1.Order by子句只能是Select語句的最後一個子句。
2.Order by可以通過使用受限制的非選擇列來排序。限制在於這些非選擇列必須是當前查找範圍內的
3.Order by可以對多列排序,默認每列是升序的,如果要調整則每列都要調整。
降序Desc(Descending),升序Asc(Ascending).
4.Order by子句是安裝字典順序排序的,一般DBMS字典順序中認爲A和a是一樣的,這個可以通過DBA來說設置。

第四章:過濾數據

這章介紹Where子句,用Sql沒有不用這個的了。

1.Where子句操作符有兩個字符形式的操作符,BETWEEN 和 IS NULL;

第五章:高級數據過濾

這章介紹了與Where子句搭配的幾個操作符,And ,Or,In,Not


1.組合Where子句可以通過And 和 Or關鍵字。一般而言,SQL在出來Or操作符前會先出來And操作符。這樣就可能帶來計算優先級的問題,解決這個問題的方法是通過圓括號來標識。
2.IN操作符適合使用在長的合法選項清單的時候,可以替代多個Or操作符。而且In操作符一般比Or操作符的組合執行要快。IN操作符最大的好處是IN操作符可以包含Select語句。

第六章:用通配符進行過濾

SQL裏面的通配符比起正則簡單多了,基本上用的是下面幾個

1.%:匹配任意多個字符
2._:匹配一個字符
3.[]:匹配在某個範圍在的字符;[^]:匹配不在某個字符範圍內的字符
4.一般而言通配符過濾執行比較慢,所有應該儘量先執行其他過濾縮小過濾範圍後再使用通配符過濾.

先寫這麼多,呆會要出工了。

153503.html

彭俊 2007-10-17 11:01 發表評論
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章