學習數據分析相關的工具,其中最常遇到的問題就是:
- 我學了這個,要怎麼知道我會了嗎?(業界認可嗎?)
- 我學了這個,除了跟著網路上的題目做以外,要怎麼應用?
- 我跟著線上的老師學,學完就只會跟著題目做,做完之後還是不知道怎麼做?該怎麼辦?
最近來遇到的諮詢,有好多學員提到「數據工具應用的問題」,今天就來分享數據分析工具 SQL 如何學會、應用在工作或是專案、作品集中的實用方法吧!
SQL 語法怎樣算是學會?掌握這 3 種目標
SQL 是什麼?
- SQL 是一個跟資料庫溝通最基礎、最實用的語言,基本上只要跟取資料相關的工作,一定離不開 SQL 這個語言
- 在學 SQL 之前,如果可以先知道學習地圖,會更知道要怎麼掌握這個語言,接下來就先來分享學習地圖!
SQL 語法分為哪些?3 大類型語法分享,掌握學習地圖
- SQL 可以用來建置資料表:所以像是 CREATE、INSERT、DELETE 都算是這一類的語法,用來建置資料表、儲存資料進去、刪除
- SQL 用來做基礎查詢,把資料叫出來:之前有寫過一篇 最白話的 SQL 語法教學攻略:10 個我最常用的,這裡面的語法就是最基礎的、如果要查詢一張資料表一定會碰到的語法,像是 SELECT FROM WHERE JOIN GROUP BY ORDER BY,還有 IN WITH LIKE DISTINCT
- SQL 用來做進階分群、資料處理、進階運算:像是 CASE WHEN、WINDOW FUNCTION 都是屬於這一類,如果想要做資料分析,這些語法也必須熟練,才可以加速我們做資料處理或是資料分析
- 子查詢、WITH (CTE):如何透過子查詢完成「資料暫存」後,才方便我們繼續做資料分析
- SQL CASE WHEN 5 種最實用寫法:如何透過 CASE WHEN 分群、貼用戶標籤
- SQL 視窗函數 Window Function 搞懂這 3 個寫法:如何透過 WINDOW FUNCTION 做進階資料處理、分群、排序等等
SQL 的學習目標是什麼?釐清目標是最重要的!
- 了解 SQL 的用途、了解他可以幫助你達成什麼目標:
- 你要建置資料表?
- 還是基礎查詢,把資料叫出來?
- 還是要做進階資料分析?
- 知道初階查詢,要怎麼使用 SQL 語言跟資料庫溝通:通常學到這個階段,你或許還是要搭配 EXCEL、GOOGLE SHEET 這樣的試算表去協助你做樞紐、資料分析
- 當資料分析的場景變的複雜時,知道如果要做進階分群、進階運算時,要怎麼規劃每一步的 SQL QUERY 要怎麼寫
如何把 SQL 運用在作品或是工作中?這 4 步驟做完,你就像一個數據分析師了!
第一步:先架置好環境
- 之前有分享過,GCP (GOOGLE 的雲端資料系統),讓每個 GMAIL 帳號都可以去用 Google BigQuery,因此你可以把自己常用的資料放到 BigQuery 中
- 這裡有手把手教學,BigQuery 的介面好看又好用,又可以免費查詢:Google BigQuery 教學:3 分鐘完成資料匯入跟 SQL 查詢,這個方式簡單又快,不需要額外下載任何軟體,非常推薦!
- 除此之外,你也可以下載 MYSQL,或是用線上版的 SQLite,把自己常使用的資料表匯進去
第二步:思考好你的問題、想好你要什麼欄位
- 在使用 SQL 之前,一定要先想好你的問題是什麼
- 解決這個問題之前,你需要什麼樣的資料?接著,最好將每個要拉出來的欄位、條件都寫下來
第三步:規劃好這些欄位需要運用什麼 SQL QUERY 的語法達成
- 每一個欄位跟條件,需要哪些語法來達成?
- 可以回想一下 SQL 3 大類型語法中,需要使用哪一個語法完成?
第四步:實際跑 SQL QUERY
- 寫好語法之後,就是跑 SQL QUERY,看一下有沒有 bug
- 最後,運用拉出來的資料,回答前面的問題。如果無法回答,就繼續這從第二步開始,直到回答你的問題!
最重要的提醒:一定要完整的做這四步!
- 整個步驟,從第一步做到第四步之後,你就會理解資料庫怎麼被儲存、資料庫用來解決什麼問題、怎麼規劃欄位、怎麼回想語法、還有如何解決 bug、回答問題等等,以上這些事情就是工作會遇到的!所以煩請大家一定要照做!
結論:像一個數據分析師一樣用 SQL,就是學好的關鍵
- 如果要學會寫前端,最好的方式就是寫出一個網頁;如果要學會 SQL,最好的方式就是像數據分析師一樣使用 SQL 完成一個專案!
更多學習資源
- 可以看看我的數據分析文章導覽!裡面也會分享更多實用 SQL 教學
- Coursera:SQL for Data Science:英文課程,當初上完這門課之後,足夠應付公司的上機考試
- SQL 的五十道練習:初學者友善的資料庫入門:中文課程,老師在台大進修部教很多年 (都是數據分析相關的課程),我的 R 也是跟老師學的,這次推出搭配很多練習題的 SQL 線上課程
Pingback: [數據分析#0] 數據分析文章導覽 - Lisa Wu 財富自由之路