Tham dự Tech Lounge

Tham dự Tech Lounge


Vì sao bạn nên học SQL, kể cả khi bạn làm marketing, finance, operations…

Duy Luân
11/10/2019 5:11Phản hồi: 657
Vì sao bạn nên học SQL, kể cả khi bạn làm marketing, finance, operations…
Bữa giờ công ty mình đang tìm nhiều giải pháp, cả cứng lẫn mềm, cả về mặt tech lẫn mặt con người, để có thể hỗ trợ các team khác nhau truy cập vào dữ liệu mà họ cần. Dashboard, report… thì đã có sẵn, nhưng vấn đề là có những câu hỏi khó, dài, phức tạp, chỉ dùng 1-2 lần (gọi là ad-hoc) nên không dashboard hay report nào có thể giúp bạn trả lời được.

Trong bài này mình gọi chung các team về kinh doanh, marketing, tài chính, vận hành, thương mại... là team business. Còn team chuyên làm data, hệ thống, luồng dữ liệu... thì gọi là team data nhé.

Vì sao các đội business lại phải chủ động lấy được số của mình?


Xây dựng một dashboard / report cho riêng câu hỏi ad-hoc đó? Cũng là một giải pháp, tuy nhiên đây không phải cách tốt nhất khi mà số nhân sự data thì có hạn, business user thì luôn phát sinh các câu hỏi ad-hoc như thế này, và thời gian cần trả lời câu hỏi thì lúc nào cũng “cho chị số này gấp được không em” hoặc “này mai có cho chị được không, mai chị họp”. Hic, khổ lắm ai ơi.

Nhưng ngặt cái là những nhu cầu này rất chính đáng. Các đội marketing, tài chính, vận hành, supply chain management luôn có những yêu cầu như thế. Họ luôn có những câu hỏi như vậy để chạy được việc, để phát triển các kế hoạch mới, để thử nghiệm những cách làm trước giờ chưa từng có. Phải có những câu hỏi “khó” như vậy thì business mới đi về phía trước, chứ không thì ù lỳ mãi ở cách làm cũ rồi.

Có 2 cách để giải quyết:
  1. Tuyển thêm thật nhiều ông data analyst (chuyên viên phân tích) vào, có thể nằm ở team data hoặc team business đều được
  2. Phía business bằng cách nào đó có thể tự trả lời được câu hỏi của mình, dựa trên một nền tảng đã được xây dựng trước
Với cách 1, khi công ty còn nhỏ, việc tuyển thêm 1–2 người làm data analytics cho các đội business là hợp lý và có thể làm ngay, nhưng khi mà công ty scale lên 1000 người, 5000 người, thậm chí 10.000 người và trả khắp toàn cầu, thì thuê bao nhiêu ông “xuất số” cho đủ? Thế rồi đội data lại trở thành điểm tắc nghẽn cho việc vận hành của business.

Blog_TheBottleneckIsAtTheTopOfTheBottle.jpg

Cho nên mình thích cách thứ 2 hơn, đó là các bạn business sẽ tự trang bị những kĩ năng lấy số của riêng mình. Data khi đó trở thành một skill, không còn là một nghề nữa (cái này mình học được từ anh Nguyễn Hoành Tiến, CEO Seedcom). Tụi làm data sẽ đi lo những cái chuyên sâu và nâng cao, còn các câu hỏi ad-hoc sẽ do business tự trả lời.

Giống như thời mà Excel mới xuất hiện, có những công ty tuyển các vị trí chuyên viên Excel. Nhưng rồi 1–2 ông Excel Specialist rồi cũng sẽ trở thành bottleneck của công ty, thế là phải tuyển thêm, mà tuyển nhiều quá thì đôi khi lại không đủ việc, rồi hướng phát triển, benefit… cho từng con người cũng không phải là chuyện đơn giản. Thế rồi các đội business cũng phải tự đi học Excel đấy thôi. Giờ thì đi làm mà không có Excel thì căng lắm.

Cũng cần nói thêm rằng không phải công ty nào cũng giống nhau. Có những công ty truyền thống, công ty nhiều tiền... thì bạn có dư người, dư sức để có ai đó chuẩn bị số cho bạn. Nếu bạn tự thấy mình ở vị trí sướng như vậy thì không cần phải học SQL làm gì. Nhưng cũng đồng thời cảnh báo bạn, bạn đang bị thiếu đi kĩ năng so với thị trường 😁

SQL — Excel của tương lai


SQL — Structured Query Language — thực ra chẳng phải là cái gì đó quá cao cấp, quá khó khăn hay fancy. Nó cũng chỉ là một câu lệnh để lấy dữ liệu chứa trong nhiều bảng khác nhau mà thôi. Nó cũng giống như việc bạn có 1 đống các file Excel và bạn phải ngồi ghép nối chúng lại với nhau, chỉ khác là SQL giúp bạn làm chuyện đó một cách cực kì hiệu quả, tiết kiệm thời gian, công sức, và bạn có thể tiếp cận với lượng dữ liệu lớn của công ty (được phân quyền kĩ càng) mà không phải đợi mấy ông IT xuất Excel cho bạn.

Nếu bạn từng dùng hàm Excel, SQL cũng y chang như thế. Muốn cộng số? SUM. Muốn đặt điều kiện? IF ELSE. Muốn nối chuỗi? CONCAT.

Có cái mới hơn, là thay vì bạn VLOOKUP, HLOOKUP giữa các sheets với nhau, thì giờ bạn dùng câu JOIN để nối chúng lại. Y chang, không khác gì về khái niệm. Cách gõ khác chút thôi.

Quảng cáo



Ví dụ đơn giản:

Code:
SELECT customer_name, phone, email
FROM tinhte_customer
WHERE email = 'duyluandethuong@gmail.com'
Câu này có nghĩa là chui vô database, trong bảng tinhte_customer, lấy ra thông tin về tên, điện thoại và email của cái ông có email là duyluandethuong@gmail.com

Hay phức tạp hơn chút:

Code:
SELECT product_name, SUM(quantity * price)
FROM sale_order_line
WHERE order_id = 'JYTFIYGRB467GIE'
GROUP BY product_name
Có nghĩa là tìm xem từng sản phẩm trong cái bill “JYTFIYGRB467GIE” bán được bao nhiêu tiền. Bảng dùng để lưu trữ chi tiết đơn hàng có tên là sale_order_line. Vậy thôi, bạn thấy cái SUM không, quá quen thuộc.

Khi bạn là một người business, mà bạn lại có thêm kĩ năng về SQL, bạn đang tạo ra lợi thế cạnh tranh của mình so với những đồng nghiệp khác. Mình biết rằng nhiều đội MKT, tài chính ở Sài Gòn đang ngồi query như điện rồi, chẳng phải là thứ gì mới mẻ đâu. Nhiều team Operations cũng đã dùng SQL và thậm chí cả những kĩ thuật phân tích nâng cao để lấy số má và tự dựng dashboard để theo dõi vận hành mà không cần phụ thuộc vào team data nữa. Team data khi đó sẽ xây platform cho bạn nghịch.

Ngó qua nước người ta, Facebook đi tuyển Customer Support cũng bắt làm test về SQL. Ogilvy bên Singapore khi tuyển Analyst cũng cần SQL, chứ không phải chỉ đợi người khác xuất số cho bạn.

Quảng cáo



Nhắc lại rằng SQL chẳng có gì ghê gớm, nhưng sức mạnh của nó thì bao la, và nó sẽ giúp cho việc của chính bạn chạy nhanh hơn, mượt hơn, ít phải phụ thuộc vào người khác hơn.

Hỗ trợ bạn học SQL


Với hi vọng ngày càng có nhiều người biết về SQL hơn, biến nó thành một kĩ năng cần thiết cho người làm business, mình đã thiết lập sẵn 1 chỗ để bạn vào học SQL.

Tutorial Points có những bài hướng dẫn về SQL, cách bạn suy nghĩ về dữ liệu và cấu trúc cơ bản của database rất hay. Bạn nên follow theo và học http://www.postgresqltutorial.com.

Nhưng thay vì phải tự cài đặt, tự setup database… thì mình tạo sẵn một chỗ cho bạn vào học rồi. Bạn chỉ cần tập trung vào đúng SQL và database mà thôi, các việc thiết lập lằng nhằng khác mình đã làm cho bạn. Cái này xài free, tiền server mình trả, bạn chỉ việc học thôi.

Từ câu SQL của mình, bạn cũng có thể thấy cách mà dữ liệu được thể hiện thành các biểu đồ khác nhau nữa.

Link truy cập: http://hocdata.cungduoc.com


Để có username password, hãy nhắn tin để mình tạo cho bạn (nhớ ghi email của bạn). Mình từng thử tạo account dùng chung nhưng người ta hay nhập sai pass -> Không login được. Vậy thì mỗi người tự có account cho chắc.

Chúc các bạn học tốt.

metabase.jpg
657 bình luận
Chia sẻ

Xu hướng

aloso88
TÍCH CỰC
4 năm
Hoặc học theo địa chỉ này : https://www.w3schools.com/sql/default.asp
@leemanhj916 Thường là thầy của ae học front-end trước 😆) sau đó rồi mới đến ae học sql.
@trancongdai Mod cho em xin user and password với
Mail lamnguyenanhminh@gmail.com
lethinh282
TÍCH CỰC
4 năm
@trancongdai Xưa học HTML toàn vô đây mò...
aloso88
TÍCH CỰC
4 năm
@lethinh282 Mình cũng vậy, học html, javascript, sql, css, sau này có thêm thư viện bootstrap. Học trên trang này rất tiện
Quá tuyệt vời, mod góp phần phổ cập dần dần cho anh em Tinh tế rồi 😁
@BlackBerryz Ai mà chẳng muốn học, chẳng muốn có nhiều kiến thức?
Nhưng? Quan trọng?
Có học nổi KHÔNG?
Kaka!
upload_2019-10-12_19-37-33.png
Không đăng nhập được nhỉ ?
@Duy Luân Ad ơi,cho mình xin ID và Pass đăng nhập để học SQL với.mail của mình là vantuyen88@gmail.com
Thanks!
@Duy Luân A Luân ơi, cho e xin ID, password khóa học SQL với ạ. Mail e: huutuan301@gmail.com
E cảm ơn a, love u <3
@Thành Nhân Cao @Duy Luân Anh ơi cho em xin username and password với ạ, em cảm ơn anh nhiều!
mahieuclone@gmail.com
@Thành Nhân Cao A cho Em xin user vs pw với ạ
mail E: davidlovedata9999@gmail.com
ides
CAO CẤP
4 năm
Cái này cơ bản mà :3
Mà làm sếp ra lệnh nhân viên nó lấy chứ 😆)
huynhtam4404
ĐẠI BÀNG
4 năm
@ides Rùi cũng có ngày mấy thằng nhờ nó lấy theo lệnh đó lên thay ghế. Bởi làm quản lý ngày nay thì yêu cầu phải có khả năng data analystics, vừa giúp mình chủ động, vừa là một thế mạnh trong môi trường toàn cầu hoá về nhân lực ngày nay
@ides Tốt nhất là bạn tự làm, chả cần ra lệnh hay nhờ ai, mình đi làm biết mà, nếu nhờ ng ta lấy thì cũng dc đấy, nhưng nh khi cũng phải đợi mà mình cần gấp, cách hay nhất là tự xử;)
bozvot
ĐẠI BÀNG
4 năm
@ides Mình nghĩ học Cấu Trúc Dữ Liệu và Giải Thuật là hợp lý nhất.
ides
CAO CẤP
4 năm
@bozvot có thể mnình chưa tới tầm này. chứ boss làm ci cái việc vào select from where làm ci nhỉ 😁
bài viết rất hữu ích 😃
@Hacker Anonymous SQL to như biển theo học SQL 2gio/ngày suốt 2 năm mà không dùng hết lực của SQL
Xưa có học môn cơ sở dữ liệu phân tán mà sau này không chuyên mảng DATA nên giờ đụng vào mấy câu lệnh truy vấn slq không nhớ gì lun 😁
@nhoxs2zin Lệnh đơn giản lên mạng search phát ra hết:D. Chỉ cần biết cấu trúc, còn lại thuật toán tự suy nghĩ. Có học rồi thì dễ, chưa học gì hết thì k biết đâu mà search luôn :D:D
sao_lai_the
ĐẠI BÀNG
4 năm
@nhoxs2zin chắc bạn nói thật vì viết còn sai kìa: sql chứ ko phải slq nhé :D
nhớ hồi xưa ngồi nghịch injection
ae học sql ,rồi đẩy lên python luôn .marketer mà có kiến thức data python thì mình toàn mời đi cơm trưa 😁
@kixx Mấy em gái MKT của mình có biết python rồi :|
oceanmoney
ĐẠI BÀNG
4 năm
@Duy Luân Mod Duy Luân viết được bài này mình thấy bất ngờ. Mấy bài của mod từ trước tới giờ mình thấy ko chất lượng lắm, và ko tinh tế. Hãy nghiên cứu những cái mới mẻ như thế này và chuyên sâu một chút sẽ thu hút hơn
@oceanmoney Ghê
@Duy Luân @Duy Luân cho mình xin acc nhé.
Thank you
Postgre này mình thấy nó còn sơ sài hơn Sql của Ms nhiều. Ko hiểu sao lại có nhiều người dùng?
hacbq211
ĐẠI BÀNG
4 năm
@Nguyễn ThanHùng Đồ sql của ms phải trả phí, dùng trên cloud thì tốn chi phí.
Tuỳ mục đích mà chọn giải pháp cho phù hợp
hungpham.plh
ĐẠI BÀNG
4 năm
@Nguyễn ThanHùng Update vô thời đại open source đi bác êi
ducpt1012
ĐẠI BÀNG
4 năm
@Nguyễn ThanHùng cái "bạn thấy" là gì? 😁
@Nguyễn ThanHùng Ơ ơ 😆
@Nguyễn ThanHùng Chắc còn nhiều lí do mà mình chứ biết đc. Để học bổ sung thêm. 😁
mongodb di 😁
Ôi e mất căn bản cái món SQL này rồi
Carl
CAO CẤP
4 năm
Học môn này bao lâu thì thành tài 😁
@Carl Uh, hoc bao lâu thì ok nhỉ
@Carl học để biết thôi bạn ơi, khi nào đụng chuyện biết áp dụng vào thì là được, còn nói đến thành tài mà chỉ học thì hơi khó
hungpham.plh
ĐẠI BÀNG
4 năm
@gatheringviolet thành tài lanh thì một buổi là được rồi, còn tài năng thì học xong, thực hành r chỉ được cho người khác nữa thì mới được 😁
nói chung 10 năm nữa/ học loại này ok/
chứ năm 2008 mình học SQl 2008 giờ coi như có căn bản thôi.
nvthong1009
ĐẠI BÀNG
4 năm
Mình đang có lượng data hơn 300k dòng excel và 120 cột phát sinh trong tháng mình có làm web dùng mysql để lưu nhưng truy vấn chậm quá. Có cách nào nhanh hơn ko vậy.
nvthong1009
ĐẠI BÀNG
4 năm
@gatheringviolet Yếu tố phần cứng ok, chắc do truy vấn của mình có vấn đề, cám ơn bạn.
@nvthong1009 Do bạn không tối ưu tốt thôi, thấy bạn có dùng truy vấn lồng. Cái đó khá mất time kaka
@hjhdahjdo Nếu đã tối ưu hết truy vấn mà vẫn chậm thì phải làm thêm 1 app chạy background mỗi này chạy truy vấn trước rồi lưu vào bảng kết quả, rồi khi cần coi bang kết quả thôi.
Ví dụ coi báo cáo hằng tháng thì cho chạy hằng ngày lúc 1h đêm để lấy báo cáo từng ngày, lưu vào bảng kết quả ngày, đến tháng thì đọc lại cái báo cáo kết quả ngày để lấy báo cáo tháng. Đó là 1 ví dụ đơn giản nhất. Còn nếu cao cấp hơn thì trả tiền để “lên cloud”, mướn dịch vụ power bi chẳng hạn thì muốn truy vấn vài chục triệu data cũng ko khó
sao_lai_the
ĐẠI BÀNG
4 năm
@nvthong1009 Vấn đề của bạn đã liên quan đến hiệu năng của hệ thống. Bạn nên xem xét lại phần thiết kế CSDL cũng như tối ưu câu lệnh sql.
Tôi giả định phần cứng của bạn đang hoạt động tốt.
Mod Duy Mập cần viết mấy bài thế này, chứ toàn “ có nên mua gamingphone để...chơi game” riết nó hư người =]]
@Rich Leon Hư ntn 😁
sgok
ĐẠI BÀNG
4 năm
rất ý nghĩa
bài viết khá hữu ích
Sao k làm một cái giao diện web với nhiều ô query để bên kinh doanh nó filter nhỉ? Tất nhiên số ô query này sẽ được cập nhật thường xuyên theo yêu cầu của bên kinh doanh. Họ đã làm kinh doanh, giờ bắt họ phải có thêm logic của bên kỹ thuật nữa thì quá tải cho họ. Nên nhớ 1 nghề cho chín còn hơn 9 nghề.
@maidng Cái này rất hay. và hợp lý nè
@Duy Luân trước hết phải giải thích với Luân là ko phải cái gì ở Amazon hay facebook cũng sẽ trở thành chân lý. 2 cty đó rất khác với phần còn lại, vì họ là Công ty Công nghệ, kiểu startup, nhân lực rất tuyệt vời, và trên cả, họ đã "dành toàn bộ tuổi thanh xuân" để xây dựng lên data khổng lồ, đến mức ko có 1 công cụ nào (UI) đủ tốt để có thể truy vấn, hoặc ko đủ team chuyên trách cho các phòng ban, nên mỗi phòng ban yêu cầu sale phải học SQL để truy vấn. Có thể họ bản thân là cty công nghệ, nên có thể tuyển được sale "siêu nhân" vậy, chứ đâu phải cty nào cũng làm theo hướng đó.

Chưa kể, bản thân amazon thì các phòng ban là 1 tcy độc lập, cạnh tranh ráo riết lẫn nhau, nên mỗi phòng ban đều có quyền làm việc trực tiếp với data của riêng mình, chứ ai đời lại có chuyện ngược đời, yêu cầu sale phải biết cả SQL như thế.

Bạn cứ tưởng tượng trong nhiều môi trường khác, data khách hàng là 1 phạm trù "luật pháp" thì bạn có thể cho nhân viên nào cũng mở trực tiếp data??? Nhân viên sale ngân hàng nếu không biết doanh số tháng này của mình bao nhiêu, hoặc ko biết khách hàng đã mua bao nhiêu order, thì sale/maketer đó tự vào DB rồi query??? Chỉ nói ví dụ đó thôi là đã thấy vui như tết rồi.
Tất nhiên là sẽ có nhiều công cụ chuyên biệt như Power BI, mỗi bạn sale sẽ được training cách tạo report mới, cách tạo filter, cách group, nhiêu đó thôi mà đã phải trả khối tiền để training rồi đó, mà còn sai lên sai xuống, suốt ngày phải gọi phòng kỹ thuật cầu cứu. Tất nhiên bộ phận phần mềm đã phải tốn nhiều công sức để tối ưu data, thuật toán, chạy data nightly, gọi là "đưa hết lên bàn để sẵn sàng gắp" mà còn gắp rớt lên rớt xuống.

Bạn @TênLàmGì đã nói rõ rất nhiều chi phí phát sinh cho cái bài toán này, sai ai chịu trách nhiệm? rồi vấn đề bảo mật thông tin, phân quyền, phân cấp, chi phí đào tạo rõ ràng là 1 dấu hỏi lớn.

@Tái bút: mình thật sự rất phục Luân ở khâu hiểu biết rộng của bạn. Ở tuối của bạn, mình nói thiệt kiến thức chỉ khoảng 1/10 của bạn là cùng. Mình tin chắc với mức độ ham học hỏi & môi trường tốt thì những vị trí cao cao của facebook/microsoft cũng nằm trong tay bạn thôi
@thuanapache Mình nghĩ kỹ năng SQL thưc sự không thể để đánh giá năng lực của một nhân viên sales được. 2 phạm trù rất khác nhau. Việc một Sales có thể tự thực hiện với DB đúng là 1 skill tuyệt vời của nhân viên đó, nhưng nó không đánh giá năng lực của 1 nhân viên sales.
Cảm thấy @Luân đang nhìn trên khía cạnh của một Dev.
Trong này chắc cũng rất nhiều ae là dev, đều có thể thấy rõ rằng: Việc phải tiếp quản, phát triển, và fix các lỗi của 1 dev khác trước đó đã làm là 1 cực hình. Huống chi là 1 người "ngoại bang" yêu cầu họ phải hiểu được các cấu trúc trong DB
lil.justme
ĐẠI BÀNG
4 năm
@maidng Các task ad-hoc là cái cần nhấn mạnh ở đây, ko phải vấn đề nào cũng có chung 1 hướng giải quyết nên khả năng TỰ tư duy và xử lý dữ liệu như này là cần thiết.
1 ví dụ đơn giản ở khía cạnh khác thì cách đây 5-7 năm thì Tiếng Anh là 1 điểm cộng nhưng giờ ko biết tiếng Anh có thể fail luôn từ vòng nộp CV.
Xã hội ngày càng phát triển, chất lượng ứng viên ngày càng cao nên yêu cầu ngày 1 nhiều hơn thôi. Các kỹ năng ko phải bắt buộc nhưng nếu kém hơn so với ng đồng trang lứa thì đang là tụt lùi với sự phát triển của xã hội rồi.

Xu hướng

Bài mới









  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2024 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: Số 70 Bà Huyện Thanh Quan, P. Võ Thị Sáu, Quận 3, TPHCM
  • Số điện thoại: 02822460095
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019