Tự học SQL: Học SQL mất bao lâu

Tự học SQL: Học SQL mất bao lâu

Học SQL tốn bao lâu tùy thuộc vào mục tiêu về mục tiêu bạn đặt ra và vị trí, công việc mà bạn mong muốn đạt được sau khi biết SQL.

Để cụ thể hơn mình xin giải thích ngắn gọn cho từng trường hợp dưới đây.

Data Analyst: Từ 1 tuần đến 1++ tháng

Data analyst

Học SQL có thể chỉ tốn… 1 ngày, và cùng lắm là 1 tuần, nếu bạn muốn làm một Analyst “không chuyên”. Mình xin ví dụ một câu query huyền thoại.

SELECT * FROM table_A

Trong đó table_A có thể là một table chứa thông tin mà bạn Data Engineer trong công ty bạn bảo là nó là cái bạn đang tìm 😂. Vậy là bạn đã có thể xuất dữ liệu ra một file csv hay excel và bắt đầu “phân tích” bằng excel hoặc một công cụ nào khác rồi đó

Ngoài ra nếu bạn muốn “nâng cấp” kĩ năng SQL, bạn có thể học thêm vài lệnh cơ bản ví dụ như COUNT, SUM, MIN, MAX… Như vậy là đủ để bạn có thể tự tin nói rằng mình biết SQL rồi đó.

Vậy phần 1++ tháng là sao

Nếu bạn muốn “nâng cấp” nữa thì hãy học thêm các phần nâng cao hơn, chứa nhiều khái niệm phức tạp hơn một chút so với các phần cơ bản ví dụ như group by ,partition by, các loại data type và cách transform, rolling window function,…

Cách để tiết kiệm thời gian nhất là … đụng đâu học đó. Tức là có một vấn đề thực tiễn bạn cần giải quyết, bạn sẽ học ngay tại thời điểm đó để ứng dụng ngay và luôn. Như vậy bạn không cần phải tốn thời gian học dàn trãi và vẫn có được hiệu quả tốt.

Để có được vấn đề cần giải quyết, tất nhiên bạn phải chờ cho nhu cầu thực tế phát sinh, nó có thể rất nhiều và nhanh nếu công ty bạn bận, hoặc rất lâu nếu công ty bạn không có nhiều việc (nhàn??).

Ngoài ra, bạn cũng có thể tự củng cố bằng cách thực hiện các dự án của riêng bạn mà không cần chờ công ty.

Data Engineer: 1++ Tháng

Cái hình này buồn cười quá

Ngoài những gì mà các bạn analyst có thể thực hiện được, các bạn engineer còn phải có một bước đi gọi là “vượt lên” SQL. Điều này tức là ngoài chính ngôn ngữ SQL các bạn còn phải quan tâm tới nhiều vấn đề khác xung quanh SQL nữa. Ví dụ như bài viết cũ của mình: TẠI SAO CÓ LẮM LOẠI SQL VẬY!

Một vấn đề “ngoài syntax”

Hoặc các vấn đề khác như từng loại SQL của từng query engine có gì khác nhau, lí do sâu xa tại sao lại có sự khác biệt này như là do cách lưu dữ liệu, do design thinking của team làm query engine, do bản chất khác loại csdl (columnar, row)…

Ngoài ra còn có các vấn đề khác về cách viết như viết thế nào để giảm tối đa cost cho server hoặc cost cho billing (nếu dùng cloud service). Caching query để chạy dashboard cho các bên khác nhau giảm thiểu chi phí cho server….

Túm cái quần lại, ở mức này, chỉ viết SQL tốt là chưa đủ, mà còn phải hiểu bản chất nó được xây dựng trên cái gì, và nó có khả năng gì, và tối ưu nó và các service mà đang hỗ trợ nó. Do đó việc học là KHÔNG BAO GIỜ DỪNG LẠI vì cứ vài tháng, năm là có công nghệ mới có hệ thống mới để học 😭.

Kết

Nếu bạn thấy bài viết hữu ích vui lòng share cho blog nhé, ngoài ra bạn có thể donate trực tiếp để mình có động lực ra tiếp những bài mới tại ví momo dưới đây.

Chân thành cảm ơn

Support Tuan | Analytic

Trả lời