什麼是SQL?為什麼學習SQL?
SQL全稱是 Structured Query Language,翻譯後就是結構化查詢語言,是一種資料庫查詢和程式設計語言,用於存取數據以及查詢、更新和管理關係資料庫系統。
至於 ORACLE、DB2、Sybase、SQL Server、MySQL、MS Access等都是資料庫,雖然語法上有差異,但是基本上都是大同小異。作為一名數據從業者,雖然市面上有很多很智慧很自助的數據工具,甚至有的拖拖拽拽就能實現,但作為一名報表工程師、數據分析師,不懂一點SQL是絕對不行的。像是使用FineReport做報表,通過拖拽操作+SQL語法結合,基礎的SQL語法還是要懂的。
之前很多文章對於SQL都一筆帶過,輕描帶寫,略忽視這項基本技能的重要性,所以今天就來講講如何學習SQL。
零基礎自學SQL時需要避開的2大障礙
1、學習之前先安裝sql server軟體(對於新人而言,安裝這個軟體真得是浪費時間,坑太多。剛畢業入職教育訓練的時候要求2天內自學SQL,結果我花了1天時間安裝軟體);
2、一上來就看和背太多sql語法,對於新人而言,不去實踐是記不住的,而且語法隨時可以查詢,以後用得多了自然就掌握了(文尾為大家準備了大量經典習題);
SQL的學習和練習可以使用線上的學習資源,我們可以在本機中進行。
線上學習資源豐富、交互式教學、無需自己搭建資料庫,這些優點非常方便初學者。
本機SQL學習可以再無網絡的情況下進行,並且是最真實的資料處理過程,如同在實際工作中使用,所以對於資料庫以及SQL與資料庫之間的連接有真實深入的了解。但需要自己搭建資料庫。為了避免這一麻煩,我們下面給大家提供了資料庫表可供直接使用。
可以兩種方式結合,能快速學習,又能在真實場景應用。
最全SQL線上學習資源和練習
一、你需要一本SQL語法手冊,隨時用隨時查
這裡提供一個繁體版本的網站,優點是的可以快速查詢基礎的sql命令,理解SQL命令的含義和使用方法。
https://www.1keydata.com/tw/sql/sql.html
二、SQL邊學習邊練習,再來個測驗看學習成果
這裡提供幾個在線學習SQL的網站,在上面你可以寫自己寫SQL語句,然後運行看看結果是否正確。使用這些網站你可以不用費力自己去搭建一個數據庫,在交互式的學習中更快的掌握SQL技能。
1.sqlzoo
https://sqlzoo.net/wiki/SELECT_basics/zh
提供繁體中文版本,互動式教學,可以隨時將所學SQL執行查看效果。
2. CodeCademy
https://www.codecademy.com/learn/learn-sql
https://www.codecademy.com/learn/sql-table-transformation
優點是交互式的學習,幾乎是真實的數據庫下使用SQL,註冊後有免費可以學,同時送7天的pro版本。
缺點是英文環境,但並不是很難。
3.sqlbolt
https://sqlbolt.com/
頁面簡潔,無須註冊即可使用,在線交互式的學習,每一節課講解後面都有對應的練習題,可以立即進行查看學習效果。
缺點是英文頁面。
4. w3school
非交互式的學習,無須註冊,學完後有小測驗。可以當作SQL詞典來查詢使用。
5. w3schools
https://www.w3schools.com/sql/default.asp
交互式學習,每一小節有練習題可以做。
英文網站
6. sqlteaching
https://www.sqlteaching.com/
互動式教學方式,頁面簡潔易懂
英文網站
本機學習SQL,使用Mysql資料庫,在NavicatSQL中練習
1、下載安裝phpstudy軟體
這個軟體自帶了mysql資料庫,而且安裝啟動方便,打開phpstudy後,點擊下圖中的啟動,點擊後資料庫服務就會啟動了。
2、下載安裝Navicat軟體
這個軟體可以輕鬆連接資料庫,我們可以在這個軟體中練習學習SQL語法。使用Navicat建立資料庫連接,點擊檔案——新建連接,連接名隨便填寫,比如我寫的是「本地」。主機名、埠都不需要修改,用戶名和密碼都是root(因為我們安裝的phpstudy里的mysql默認用戶名密碼就是root),點擊連接測試顯示為成功後點確定保存。
以後再次訪問時,雙擊即可。
3、下載習題進行學習,內含習題需要用到的數據表
4、導入第3步中下載的數據表
右擊第2步中的「本地」,新建一個資料庫test1,雙擊打開新建的資料庫(打開後顏色是綠色)。
拖拽剛才下載的資料表文件(sqltest1.sql)到test1上面。
零基礎快速自學SQL,1天足矣!
這時會出現上述彈窗,點擊開始,等待導入完成後,點擊關閉
在左側空白處右擊,選擇“刷新”,即可看到剛才導入的資料表了。
5、打開sql語法編輯器
如下圖點擊查詢 — — 新建查詢,在空白處輸入sql語法,點擊運行,如果輸入錯誤會有報錯,輸入正確則會返回查詢內容。
6、邊做邊學,鞏固練習
打開第一部分習題,邊做邊學,通過查詢w3c的sql語法手冊完成
嘗試不看sql語法手冊,獨立完成第二部分習題。
最後說一句,SQL技能從入門到進階,最重要還是學習+經驗,如果實際工作中一直有接觸,比任何學習資料都好!