数据分析师要掌握SQL到什么程度?
很多人入門學習數據分析,往往第一時間就是去學習SQL,那么問題就來了:要成為數據分析師需要掌握SQL到什么程度呢?
從我自己的認知里,數據分析中只有兩部分的工作是 SQL 無法完成的:數據可視化,即數據的圖形化展示;數據挖掘,即數據的深度學習、機器學習等算法。
那么在實際工作中的數據分析里,哪些具體的工作會用到 SQL 呢?
有些小伙伴不知道本文內容和更多相關學習資料的請點贊收藏+評論轉發+關注我,后面會有很多干貨。我有一些面試題、架構、設計類資料可以說是程序員面試必備!所有資料都整理到網盤了,需要的話歡迎下載!私信我回復【000】即可免費獲取
?
(1)為固定報表提供數據。在大部分的固定報表中,SQL 一定是為報表提供數據的最好方式。
(2)數據跟蹤、報表調試、數據驗證。當用戶反映報表數據有問題時,就需要從報表的 SQL 出發,一步步調試,跟蹤發現數據問題出現在哪個表、哪個過濾條件、哪個權限。還有,在報表上線前的測試階段,用自己寫好 SQL 返回的數據和報表的 SQL 返回的數據進行對比驗證。
(3)一些公司不用專業圖形化的 ETL 開發工具,而偏向寫存儲過程 SQL 來執行數據的抽取、轉換和加載,因此會寫存儲過程也是非常重要的。
其實不同數據分析崗位對于SQL掌握程度的要求和標準是不同的。
比較常見的業務分析師,對SQL的掌握有一定要求,不過也不必要十分精通,只要能從數據倉庫里取數、學會普通的增刪減改就行了,取數不是業務分析師的主要工作,而且很多人用現成的BI工具,或者直接Python大法,雖然也需要SQL從數據庫中取數,但是不用考慮復雜邏輯;
如果是做數據倉庫的分析師,或者說更類似于系統分析師,那就必須要精通SQL了,作為吃飯的飯碗,當然不能差了,起碼來說T-SQL、約束、觸發器、復雜綜合查詢、客戶端、聯機分析處理等都要掌握,更好地提高檢索速度對于業務來說比較重要;
當然還有一些數據分析崗位,對于SQL不是必須的,但是學會了是加分項。
一般數據分析人員,其中會用SQL進行增刪改查是必須的,然后業務不同你可能需要掌握的內容有:
1. 除了查,其他建議開啟事務,絕對是個好習慣
2. 會建立基礎視圖用來清理數據,在存儲過程中使用視圖,整個耦合性會更好一點
3. 會建立臨時表來進行多表之間關聯,做一些復雜的查詢
4. row_number ()函數使用,熟練使用此函數,對于新客/老客/頻次等分析很有幫助
5. 當數據量大時,少用子查詢,多用exists 操作.
6. 關聯時多想想會不會出現笛卡爾集,造成數據異常
7. 時間格式轉換要熟練
8. lag 函數
9. concat 函數
10. stuff 函數 ,使得本來需要多行展示的列合并在同一列展示,不過查詢速度比較慢12. sum()over 函數
13. max,min等函數對于一些字符串的處理特別有用
14. select case when .....end 有時候可以替代where 條件避免關聯
以后也可能會有新的更加方便的工具出來替代SQL,但是能夠在SQL應用中掌握業務邏輯,熟悉業務指標,精通數據清理,對于數據分析方法游刃有余,那么不管走遍哪里都會不怕了。
有些小伙伴不知道本文內容和更多相關學習資料的請點贊收藏+評論轉發+關注我,后面會有很多干貨。我有一些面試題、架構、設計類資料可以說是程序員面試必備!所有資料都整理到網盤了,需要的話歡迎下載!私信我回復【000】即可免費獲取
?
總結
以上是生活随笔為你收集整理的数据分析师要掌握SQL到什么程度?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2.1 高斯消元
- 下一篇: CORS了解与VUE跨域解决