SQL là gì? Tất cả những gì bạn cần biết về ngôn ngữ SQL đều nằm trong bài viết này

SQL là gì ? SQL là viết tắt của từ Structured Query Language, nghĩa là ngôn từ truy vấn tài liệu. Có thể coi SQL là ngôn từ chung mà bất kỳ mạng lưới hệ thống cơ sở tài liệu quan hệ ( RDBMS ) nào cũng phải cung ứng .

Đọc bài phỏng vấn của ITviec với anh Hồng Minh Trí – người có hơn 7 năm làm việc với SQL để biết đầy đủ về SQL là gì và Những tài liệu học SQL tham khảo cho người mới bắt đầu tìm hiểu về ngôn ngữ SQL.

Xem thêm việc làm SQL Developer trên ITviec

SQL là gì?

SQL là gì ? SQL là viết tắt của Structured Query Language, nghĩa là ngôn từ truy vấn tài liệu. Có thể coi ngôn từ SQL là ngôn từ chung mà bất kỳ mạng lưới hệ thống cơ sở tài liệu quan hệ ( RDBMS ) nào cũng phải phân phối, điển hình như : Oracle Database, SQL Server, MySQL …
Bất kì công ty nào lớn cũng cần thiết kế xây dựng một mạng lưới hệ thống để tàng trữ cơ sở tài liệu. Mọi thứ trong cơ sở tài liệu này sẽ được quy ra thành nhiều bảng, có mối quan hệ với nhau. SQL giúp quản trị hiệu suất cao và truy vấn thông tin nhanh hơn, giúp bảo dưỡng thông tin thuận tiện hơn .

Khi doanh nghiệp tàng trữ thông tin dạng truyền thống cuội nguồn như giấy hay file Excel thì sẽ có nhiều rủi ro đáng tiếc như bị mất, sửa, xóa … cũng như phải mất rất nhiều thời hạn để lục lại hồ sơ. Chưa kể, một số ít trường hợp sau khi thêm hoặc sửa thông tin, hồ sơ sẽ không còn hợp lệ .Trong khi, nếu tàng trữ thông tin vào một mạng lưới hệ thống cơ sở tài liệu, bạn chỉ cần gõ một câu lệnh SQL ngắn là đã hoàn toàn có thể trích xuất được thông tin em cần. Việc thêm / xóa / sửa cũng được triển khai một cách thuận tiện, nhanh gọn .

Để truy vấn và lấy tài liệu từ những bảng này ( nhằm mục đích tổng hợp thành thông tin có ích nào đó ), người ta dùng đến SQL trải qua những câu query .

Đọc thêm : Kiến thức cần biết về SQL Server

PL/SQL là gì?

PL / SQL là viết tắt của Procedural Language / Structured Query Language – một loại ngôn từ thủ tục dùng cho Oracle. PL / SQL là một extension ( lan rộng ra ) của riêng Oracle .
PL / SQL sinh ra để tương hỗ thêm cho web service. Nếu như SQL có trách nhiệm truy vấn đến những bảng để trả về tài liệu thì PL / SQL sẽ triển khai những quy trình tiếp theo như : đóng gói tác dụng, giải quyết và xử lý cách hiển thị trên giao diện …

Công việc của SQL Developer

Công việc của một SQL Developer tùy thuộc vào nhu yếu của mỗi công ty. Anh Trí san sẻ ,

Về cơ bản, SQL giống như một kỹ năng và kiến thức. Hầu như developer nào cũng sẽ thao tác với SQL dù ít hay nhiều .Chỉ có ngân hàng nhà nước hoặc những công ty có mạng lưới hệ thống tài liệu cực lớn như thì họ mới tuyển developer chuyên thao tác với SQL và chỉ duy nhất SQL mà thôi .

Công việc của một SQL Devloper sẽ :

  • Thường xuyên trích xuất dữ liệu, tổng hợp các báo cáo
  • Phân tích và dự đoán về tình hình tài chính doanh nghiệp
  • Đưa ra kế hoạch hoặc định hướng để cải thiện tình hình tài chính doanh nghiệp

Còn lại, việc làm của một SQL cũng sẽ giống như những lập trình viên khác. Anh Trí san sẻ thêm về việc làm hiện tại của anh khi làm theo quy mô Scrum, chia ra làm nhiều Sprint khác nhau :

Mỗi sáng, anh thường họp với văn phòng bên Úc để báo cáo giải trình tình hình việc làm : Hôm qua đã làm những gì, ngày hôm nay sẽ làm gì tiếp theo, có khó khăn vất vả nào cần tương hỗ không … rồi mới khởi đầu vào việc làm chính .Công việc của anh là xử lý từng story đơn cử trong từng Sprint mà Scrum Master đã phân chia cho mọi người. Những story này thường sẽ được chia điểm tùy theo mức độ phức tạp của requirement .Phía người mua cũng có ràng buộc là trong một Sprint, mỗi một developer phải làm tối thiểu bao nhiêu point đó, chứ không ít hơn được .Để xử lý story, thời hạn của anh vẫn xoay quanh việc coding và unit test ( test lại những tính năng cơ bản sau khi develop một công dụng nào đó ), sau đó chuyển giao lại cho Tester kiểm thử requirement .Thỉnh thoảng, bọn anh cũng sẽ review code chéo cho nhau khi được nhu yếu để bảo vệ mọi người đều hoàn toàn có thể cải tổ kiến thức và kỹ năng coding .

sql-la-giNgoài giờ làm, anh Trí có sở thích chụp ảnh và đi du lịch đây đó

Những tố chất nên có khi làm SQL là gì?

Theo anh Trí, một người muốn làm về SQL thì nên chiếm hữu 3 năng lực sau đây :

  • Thứ nhất, nên có tư duy lập trình cơ bản:

Khi có tư duy lập trình, có nền tảng học về IT tại trường ĐH rồi thì bạn sẽ làm quen với SQL rất nhanh. Về cơ bản, những ngôn từ lập trình chỉ khác nhau về cú pháp còn thực chất hay logic thì khá tương đương .
Tuy nhiên, anh Trí cũng san sẻ thêm rằng điều này cũng không phải yếu tố bắt buộc vì anh thấy có nhiều bạn học kinh tế tài chính nhưng chuyển qua học và làm SQL cũng “ ổn áp ” .

  • Thứ hai, cần có khả năng tiếng Anh:

Theo anh Trí, việc học tiếng Anh có nhiều quyền lợi :

  1. Hầu hết các tài liệu học SQL hay đều được viết bằng tiếng Anh. Có nhiều bài được dịch sang tiếng Việt nhưng vẫn chưa thật sự “chuẩn” và dễ hiểu.
  2. Khi làm việc trong môi trường công ty nước ngoài, việc phải giao tiếp, tham dự các cuộc họp với người nước ngoài là chuyện đương nhiên nên khả năng tiếng Anh tốt sẽ là một lợi thế khi làm việc.

Nói về kinh nghiệm tay nghề học tiếng Anh của mình thì anh san sẻ rằng anh hầu hết học qua TT. Anh thực hành thực tế trò chuyện với thầy cô người bản xứ, làm bài tập về nhà, coi phim không phụ đề trên Youtube, cứ nghe đi nghe lại nhiều lần .

  • Thứ ba, cần có tính cẩn thận và tỉ mỉ:

Làm việc với tài liệu mà sai một ly là đi một dặm .
Anh Trí khuyến khích người mới làm về SQL nên liên tục đọc lại log server để biết được nguyên do sâu xa gây phát sinh lỗi. Biết được nguyên do thì lần sau mới tránh lặp lại lỗi tương tự như .

Xem thêm việc làm SQL Developer trên ITviec

Lộ trình sự nghiệp khi theo SQL là gì?

Cá nhân anh Trí thấy SQL Developer nói riêng, và Database Developer nói chung, hoàn toàn có thể tăng trưởng theo 2 hướng tăng trưởng :

  • Với những ai có thiên hướng kỹ thuật:

Bước tiếp theo thì bạn có thể phấn đấu để trở thành Data Architect – người thiết kế ra cơ sở dữ liệu cho doanh nghiệp. Muốn làm Data Architect thì yêu cầu bắt buộc là phải nắm rõ được hệ thống trước đã nhé.

Ngoài ra, Data Scientist cũng là vị trí đáng xem xét. Ngoài kiến thức và kỹ năng về SQL, em còn phải biết về Phần Trăm thống kê và ngôn từ lập trình khác, thường là Python .

Anh đánh giá và nhận định Data Scientist là hướng đi khá hay và tiềm năng, không riêng gì với mảng database mà còn với ngành IT nói chung .

  • Với những ai có thiên hướng về quản lý:

Những SQL Developer tăng trưởng theo hướng quản trị thì hoàn toàn có thể làm Business Analyst hoặc Project Manager .

Tài liệu học SQL tham khảo

Sách về SQL thì anh Trí gợi ý những tài liệu học SQL sau đây sẽ tương thích với người mới mở màn :

  • SQL For Dummies: Hướng dẫn cách sử dụng SQL để xây dựng hệ thống quản lý cơ sở dữ liệu, thiết kế database, truy xuất thông tin khi cần…

Còn nếu muốn khám phá riêng về Oracle SQL ( đơn cử là PL / SQL ), anh gợi ý như sau :

  • Oracle PL/SQL For Dummies: giải đáp tất tần tật các câu hỏi của những người mới bắt đầu về PL/SQL, kèm hướng dẫn thực hành cụ thể.
  • Oracle PL/SQL Programming: người đọc sẽ hiểu hơn về lập trình PL/SQL và có những kiến thức nhất định về cách làm việc hiệu quả với PL/SQL thông qua các ví dụ minh họa.
  • Learn About Oracle Database: không thể bỏ qua trang chủ của Oracle với rất nhiều các kiến thức liên quan đến SQL, PL/SQL và Oracle Database.

Tham khảo thêm : 50 câu phỏng vấn SQL thường gặp

SQL Developer trong ngành nói gì?

  • “SQL sẽ không bao giờ chết”

Anh Trí san sẻ rằng ,

Anh thấy SQL sinh ra rất truyền kiếp rồi và anh đánh giá và nhận định là SQL sẽ không khi nào chết .Hầu hết những ngân hàng nhà nước, công ty kinh tế tài chính lớn đều đang sử dụng SQL để ship hàng cho mạng lưới hệ thống quản trị cơ sở tài liệu Oracle. Mà em biết rồi đó, cái gì họ đã góp vốn đầu tư nhiều tiền thì rất ít khi họ muốn đổi khác .

Tuy nhiên, Thực tế thì mình học cái gì cũng vậy, nên nhìn ra thị trường và tiên đoán xem ngành mình đang làm có còn chỗ đứng trong 5-10 năm nữa hay không, có còn tăng trưởng được nữa hay không .
Nên mình hoàn toàn có thể linh động cung ứng được xu thế của thị trường vì thị trường không hề đứng im mãi một chỗ được. Nên anh cũng chứng minh và khẳng định rằng những ngôn từ truy vấn khác rất thiết yếu cho developer .

Đọc thêm bài viết : “ Tôi không muốn học ngôn từ truy vấn rác nào khác, ngoài SQL ” – Erik Bernhardsson

  • Câu query có chạy tốt hay không phụ thuộc vào dữ liệu ở mỗi môi trường

Anh Trí kể về một trong những sai lầm đáng tiếc mà anh đã từng mắc phải trong quy trình thao tác ,

Anh nhớ trước đây có một câu query anh viết chưa thực sự tối ưu nên anh quyết định hành động thêm Oracle hint ( diễn giải dùng để hướng dẫn Oracle chạy theo ý mình ) thì thấy code chạy nhanh hơn hẳn .Ỷ y là code của mình ngon rồi, cool rồi, anh đưa lên thiên nhiên và môi trường UAT ( User Acceptance Testing ). Đây là môi trường tự nhiên để mình test trước khi demo cho người mua .Lúc này, những nhân viên cấp dưới ở những phòng ban khác cùng truy xuất vào câu query của anh để test thử thì bị treo, bị đơ toàn tập .Sau khi khám phá, anh phát hiện nguyên do bị lỗi nằm ở chính cái hint mà anh đã thêm vào. Nó chỉ chạy tốt trong thiên nhiên và môi trường development – nơi chỉ có 1 user là anh đang thao tác. Còn ở môi trường tự nhiên như UAT – nơi có nhiều user hoạt động giải trí cùng lúc thì nó lại chạy rất chậm .

Chính về thế, SQL Developer nên nhớ là câu query có chạy tốt hay không còn nhờ vào vào tài liệu ở mỗi thiên nhiên và môi trường. Không nên dựa trọn vẹn vào thiên nhiên và môi trường development. Dữ liệu ở môi trường tự nhiên này ít hơn hẳn so với môi trường tự nhiên production .
Kinh nghiệm của anh là nên dữ thế chủ động test toàn bộ những trường hợp hoàn toàn có thể xảy ra trên nhiều thiên nhiên và môi trường nhất hoàn toàn có thể. Không nên thụ động, không chờ Tester la làng thì mới bắt tay vào sửa .

  • Đi làm và đi học sẽ rất khác nhau

Có một thực sự ai cũng biết nhưng cũng cần phải nhắc lại đó là đi học và đi làm là hai môi trường tự nhiên trọn vẹn khác nhau .
Anh Trí kể về câu truyện của bản thân khi đi đến với “ phát hiện ” này :

Khi học ở trường, anh phải tự phong cách thiết kế ra cơ sở quản trị tài liệu riêng, Giao hàng cho đề án chứ không có cơ sở quản trị tài liệu thực tiễn của doanh nghiệp để thực hành thực tế .Anh không biết một mạng lưới hệ thống lớn sẽ hoạt động giải trí thế nào, chưa được tiếp xúc với performance issue, không biết câu query của mình sẽ chạy nhanh hay chậm khi đưa vào thiên nhiên và môi trường có lượng tài liệu lên đến hàng trăm GB …Rồi đó, đi làm mới nhận ra trong thực tiễn phũ phàng. Câu query của mình không hiệu suất cao, không trích xuất được đúng tài liệu mình cần .

Cảm ơn anh Trí vì những san sẻ rất chân thực và có ích !

Tiểu sử:

Anh Hồng Minh Trí tốt nghiệp đại học Huflit ngành Software Engineering năm 2011. Anh đã từng làm việc cho rất nhiều công ty như FE Credit, Cosatech, BPC Banking Technologies, Amaris và hiện là PL/SQL Developer ở Hansen Technologies.

Tính đến nay, anh Trí đã có hơn 7 năm kinh nghiệm tay nghề thao tác với SQL, PL / SQL cũng như mạng lưới hệ thống quản trị cơ sở tài liệu Oracle Database .
Robby2Robby2

Nếu bạn nghĩ những chia sẻ này có thể giúp ích cho bạn bè hoặc đồng nghiệp, đừng quên nhấn nút Share bên dưới nhé!

Và đừng quên tham khảo việc làm SQL Developer tại ITviec!