本課程於 2026 年進行課程更新
2026 年所進行的課程更新包含下列幾項重要更動:
- 原本的課程影片在觀念講解之後沒有上機實作,這次課程影片更新會在每一個重要觀念講解後示範操作,藉以驗證觀念。
- 練習題全面替換為以 Google Colab 作為服務平台,捨棄不穩定的 mybinder.org。
- 加入通用表運算式(Common Table Execution, CTE)協助學員能在一般使用者權限下有更大發揮。
- 實踐「貴精不貴多」思維,調降學習資料庫的數量(由四個調整為兩個),讓學員可以專注學習 SQL,而不需要花費多餘時間精力熟悉資料表內容。
- 實踐「貴精不貴多」思維,將原本課程中簡略快速帶過的資料定義語言、資料操作語言部分捨棄,讓學員專注學習「資料查詢語言」。
- 將趣味盎然的資料庫改以「課程公告」形式發佈作為補帖,讓學員在完課後也有動機保持聯絡、回來看看課程公告。
SQL 是大數據、資料科學與軟體開發等專業領域的重要語言
SQL 早在 1970 年代就問世,但至今仍在大數據、資料科學、手機應用程式與網站開發等專業領域,扮演著「喊水會結凍」舉足輕重的要角。
在 Stack Overflow 2025 Developer Survey 中 SQL 於 Most Popular Technologies 中排名第三;在 2022 Kaggle ML & DS Survey 中 SQL 於 "What programming languages do you use on a regular basis?" 排名第二,SQL 的重要性不言可喻。
基於 SQL 的重要性,我在台大工商管理學系開設三學分的「視覺化與現代資料科學」中有三分之一的比重與 SQL 相關,同時也在台大的資工系統訓練班有開「 SQL 資料分析」。
在授課的過程中,感受到 SQL 與資料庫的強烈需求與熱忱的學習動機,因此,我希望透過在好學校開設「SQL的五十道練習:初學者友善的資料庫入門」,希望學生一步步跟著講師完成這門課程所有的觀念講解、範例實作以及五十道練習之後,扎實地將 SQL 納入自己的技能樹,大幅提升工作掌握度與職涯發展性!
以 Exercise Based Learning 為設計核心
「SQL的五十道練習:初學者友善的資料庫入門」將會採用 EBL (Exercise Based Learning) 的學習理念,我們可以將 EBL 視為 PBL (Problem Based Learning) 的輕量版,五十道練習都是明確並且給定預期輸出結果的題型,不會有開放式問題或者分組討論的設計。
使用生活化的資料庫資源與題目設計
課程所使用的學習資料庫貼近生活,包含 IMDb 網站的電影資料(imdb.db)以及 Johns Hopkins 2019 年新冠病毒資料(covid19.db)。
當課程進行到尾聲,學生將能夠:
- 暸解 SQL 以及資料庫的基礎知識。
- 暸解如何在自己的桌上或筆記型電腦建立與課程相同的學習環境。
- 學會 SQL 的查詢語法。
- 完成 SQL 的五十道練習。
SQL 是能夠操作資料的語言,這堂課程會將 100% 的時間與心力放在查詢語法,每個單元都會包含:
課程共有 11 個章節,從簡介開始,後續各單元則介紹 SQL 的不同功能,每個單元包含數個可以自行批改測試的練習題,從觀念、實作、練習、詳解,幫你入門 SQL:
1. 簡介。 2. 從資料表選擇。 3. 衍生計算欄位。 4. 函數。 5. 排序查詢結果。 6. 篩選資料。 7. 條件邏輯。 8. 分組與聚合結果篩選。 9. 子查詢。 10. 關聯資料表。 11. 綜合練習題。
- 「數聚點」粉絲頁:https://www.facebook.com/datainpoint
- 「數聚點」網站:https://www.datainpoint.com
講師作品
Hahow 線上課程
- 如何成為資料分析師:從問題解決到行動方案
- SQL 的五十道練習:初學者友善的資料庫入門
- Python 的 50+ 練習:資料科學學習手冊
- R 語言的 50+ 練習:統計分析的前哨站
- 進階 SQL 的五十道練習:資料庫功力再提升
- 資料分析的七個練習專案:累積個人作品集
出版書籍
電子報與部落格
- 數聚點文摘:https://datainpoint.substack.com/about
- Medium 部落格:https://medium.com/datainpoint
回覆與作業設計
- 每一個單元都有練習題需要同學動手練習。
- 請使用瀏覽器(Chrome/Firefox/Edge)點選練習題連結,啟動老師已經設定妥當的雲端環境(包含題目、測資與批改)。
- 寫完以後請同學自行執行批改程式碼。
- 強烈建議同學親手練習以後才觀看練習題詳解的影片。
- 開課後依照課程進度,暫定每兩週於問題討論區回覆 5 - 15 個同學關於課程或作業的問題,另外也會視同學修課進度於課程公告中發佈直播連結,與同學互動解答。
