SQL是數據處理分析最常用的工具,除了Excel,就是它了。
我之前學習SQL,硬是買了本SQL學習指南,把語法從頭到尾看了個遍,但僅僅是心裏有數的程度,後來進公司大量的寫程式碼跑數,才算真真摸透了SQL,知道怎麽調優才能最大化效率。
現在網上SQL教程多如牛毛,對初學者來說既是好事也是壞事,有了更多選擇但不知道如何選擇。
有的甚至用Chatgpt來學習SQL,讓它出教程、寫程式碼,也是很好的學習方法。
SQL語言比較簡單,它的語法主要分為以下四個結構。數據定義語言(DDL) :用於定義資料庫結構,包括建立、修改和刪除資料庫、表、索引和檢視等。
數據操縱語言(DML) :用於操作資料庫中的數據,包括插入、更新和刪除數據等。
數據查詢語言(DQL) :用於從資料庫中檢索數據,包括SELECT語句等。
數據控制語言(DCL) :用於控制對資料庫的存取和許可權,包括GRANT、REVOKE等語句
其實我理解的SQL學習分兩步,首先弄清楚SQL基礎語法,然後大量的去寫程式碼,所以不必糾結用哪個網站或者教程,只要你能找到的都可以去學。
我之前在幾個SQL網站做過跑數練習,用起來還不錯,可以試一試。
首先是SQLBolt這樣的練習網站。
這是個免費且不需要註冊的SQL網站,可以直接在上面寫SQL並執行。它提供了數據集,你只要按照題目要求寫SQL程式碼,就能直接跑數。
我看了下大概是有18個練習計畫,覆蓋了SQL簡單查詢、篩選排序、分組聚合、多表查詢、子查詢、連線、條件判斷,以及增刪改等大部份的練習操作。 而且針對每個練習場景,這個網站還提供了了教程講解,雖然是英文,但理解起來並不困難。比如說使用join進行多表查詢:怎麽說呢,對新手來說把這十幾個練習做完,基本能上手SQL做一些數據分析的工作。
除了這個網站外,還有像SQL Zoo也提供了類似的練習環境,大家都可以試試。
做完SQL練習訓練之後,我覺得可以去做一做大廠的面試真題,因為練習的東西主要偏語法,而真題更貼近工作的真實場景。像leetcode、牛客網這類網站提供了大量面試真題,可以刷一刷。比方說,寫SQL來查詢平均播放進度大於60%的視訊類別,這就是愛奇藝、騰訊、優酷等視訊類大廠常見的面試題。
這樣的SQL面試真題非常多,可以滿足電商、社交、視訊、遊戲等不同業務的面試需求。 如果你面試數分、演算法、營運等崗位,很大可能有SQL的題目,多練習這些真題總沒錯的。
學習SQL的手段很多,主要還是要靠多練習,多在真實場景中解決問題,久而久之,你也會成為SQL高手。
加入知識星球 【我們談論數據科學】
提供100節專屬Pandas數據分析視訊教程
600+ 小夥伴一起學習!