SQL 零基礎入門教程


SQL 是使用最為廣泛的數據庫語言。不管你是應用開發者、數據庫管理員、Web 應用設計師、移動應用開發人員,還是只使用流行的報表工具的普遍用戶,掌握良好的 SQL 知識對用好數據庫都是很重要的。

本 SQL 零基礎入門教程將講授讀者需要了解的 SQL 知識,從簡單的數據檢索入手,逐步過渡到一些較為復雜的內容,如聯結、子查詢、存儲過程、游標、觸發器以及表約束等。讀者將從本教程中循序漸進、系統而直接地學到 SQL 的知識和技巧。

一、了解 SQL

這一部分介紹了什么是 SQL,它為什么很有用。因為 SQL 是用來與數據庫打交道的,所以,我們也復習了一些基本的數據庫術語。

二、檢索數據

這一部分的 SQL 教程學習了如何使用 SQL 的 SELECT 語句來檢索單個表列、多個表列以及所有表列。你也學習了如何返回不同的值,如何注釋代碼。同時不好的消息是,復雜的 SQL 語句往往不夠通用。下一部分將講授如何對檢索出來的數據進行排序。

三、排序檢索數據

這一部分的 SQL 教程學習了如何用 SELECT 語句的 ORDER BY 子句對檢索出的數據進行排序。這個子句必須是 SELECT 語句中的最后一條子句。根據需要,可以利用它在一個或多個列上對數據進行排序。

四、過濾數據

這一部分的 SQL 零基礎入門教程介紹了如何用 SELECT 語句的 WHERE 子句過濾返回的數據。我們學習了如何檢驗相等、不相等、大於、小於、值的范圍以及 NULL 值等。

五、高級數據過濾

這一部分講授如何用 ANDOR 操作符組合成 WHERE 子句,還講授了如何明確地管理求值順序,如何使用 INNOT 操作符。

六、用通配符進行過濾

這一部分的 SQL 零基礎入門教程介紹了什么是通配符,如何在 WHERE 子句中使用 SQL 通配符,還說明了通配符應該細心使用,不要使用過度。

七、創建計算字段

這一部分介紹了計算字段以及如何創建計算字段。我們用例子說明了計算字段在字符串拼接和算術計算中的用途。此外,還講述了如何創建和使用別名,以便應用程序能引用計算字段。

八、使用函數處理數據

這一部分的 SQL 教程介紹了如何使用 SQL 的數據處理函數。雖然這些函數在格式化、處理和過濾數據中非常有用,但它們在各種 SQL 實現中很不一致。

九、匯總數據

聚集函數用來匯總數據。SQL 支持 5 個聚集函數,可以用多種方法使用它們,返回所需的結果。這些函數很高效,它們返回結果一般比你在自己的客戶端應用程序中計算要快得多。

十、分組數據

上一部分介紹了如何用 SQL 聚集函數對數據進行匯總計算。這一部分的 SQL 教程講授了如何使用 GROUP BY 子句對多組數據進行匯總計算,返回每個組的結果。我們看到了如何使用 HAVING 子句過濾特定的組,還知道了 ORDER BYGROUP BY 之間以及 WHEREHAVING 之間的差異。

十一、使用子查詢

這一部分的 SQL 教程學習了什么是子查詢,如何使用它們。子查詢常用於 WHERE 子句的 IN 操作符中,以及用來填充計算列。我們舉了這兩種操作類型的例子。

十二、聯結表

聯結是 SQL 中一個最重要、最強大的特性,有效地使用聯結需要對關系數據庫設計有基本的了解。這一部分的 SQL 零基礎入門教程在介紹聯結時,講述了一些關系數據庫設計的基本知識,包括等值聯結(也稱為內聯結)這種最常用的聯結。下一部分將介紹如何創建其他類型的聯結。

十三、創建高級聯結

這一部分是上一部分的延續,首先講授了如何以及為什么使用別名,然后討論不同的聯結類型以及每類聯結所使用的語法。我們還介紹了如何與聯結一起使用聚集函數,以及在使用聯結時應該注意的問題。

十四、組合查詢

這一部分的 SQL 教程講授如何用 UNION 操作符來組合 SELECT 語句。利用 UNION,可以把多條查詢的結果作為一條組合查詢返回,不管結果中有無重復。使用 UNION 可極大地簡化復雜的 WHERE 子句,簡化從多個表中檢索數據的工作。

十五、插入數據

這一部分的 SQL 教程介紹如何將行插入到數據庫表中。我們學習了使用 INSERT 的幾種方法,為什么要明確使用列名,如何用 INSERT SELECT 從其他表中導入行,如何用 SELECT INTO 將行導出到一個新表。下一部分將講述如何使用 UPDATEDELETE 進一步操作表數據。

十六、更新和刪除數據

這一部分的 SQL 教程講述了如何使用 UPDATEDELETE 語句處理表中的數據。我們學習了這些語句的語法,知道了它們可能存在的危險,了解了為什么 WHERE 子句對 UPDATEDELETE 語句很重要,還學習了為保證數據安全而應該遵循的一些指導原則。

十七、創建和操縱表

這一部分的 SQL 教程介紹了幾條新的 SQL 語句。CREATE TABLE 用來創建新表,ALTER TABLE 用來更改表列(或其他諸如約束或索引等對象),而 DROP TABLE 用來完整地刪除一個表。這些語句必須小心使用,並且應該在備份后使用。由於這些語句的語法在不同的 DBMS 中有所不同,所以更詳細的信息請參閱相應的 DBMS 文檔。

十八、使用視圖

視圖為虛擬的表。它們包含的不是數據而是根據需要檢索數據的查詢。視圖提供了一種封裝 SELECT 語句的層次,可用來簡化數據處理,重新格式化或保護基礎數據。

十九、使用存儲過程

這一部分的 SQL 教程介紹了什么是存儲過程,為什么使用存儲過程。我們介紹了執行和創建存儲過程的語法,使用存儲過程的一些方法。存儲過程是個相當重要的主題,一個部分的內容無法全部涉及。各種 DBMS 對存儲過程的實現不一,你使用的 DBMS 可能提供了一些這里提到的功能,也有其他未提及的功能,更詳細的介紹請參閱具體的 DBMS 文檔。

二十、管理事務處理

這一部分的 SQL 教程介紹了事務是必須完整執行的 SQL 語句塊。我們學習了如何使用 COMMITROLLBACK 語句對何時寫數據、何時撤銷進行明確的管理;還學習了如何使用保留點,更好地控制回退操作。事務處理是個相當重要的主題,一個部分的內容無法全部涉及。各種 DBMS 對事務處理的實現不同,詳細內容請參考具體的 DBMS 文檔。

二十一、使用游標

我們在這個部分講授了什么是游標,為什么使用游標。你使用的 DBMS 可能會提供某種形式的游標,以及這里沒有提及的功能。更詳細的內容請參閱具體的 DBMS 文檔。

二十二、高級 SQL 特性

本部分的 SQL 零基礎入門教程講授如何使用 SQL 的一些高級特性。約束是實施引用完整性的重要部分,索引可改善數據檢索的性能,觸發器可以用來執行運行前后的處理,安全選項可用來管理數據訪問。不同的 DBMS 可能會以不同的形式提供這些特性,更詳細的信息請參閱具體的 DBMS 文檔。

(完)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM