Truy vấn cơ sở dữ liệu là gì? Tất tần tậ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 ngữ truy vấn cơ sở dữ liệu. Có thể coi SQL là ngôn ngữ chung mà bất cứ hệ thống cơ sở dữ liệu quan hệ (RDBMS) nào cũng phải đáp ứ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ì?

Trước khi tìm hiểu và khám phá SQL là gì, ta cần biết đến những khái niệm cơ bản sau về cơ sở tài liệu :

  • Cơ sở dữ liệu (Database) là tập hợp dữ liệu có cấu trúc được lưu trữ và truy cập từ hệ thống máy tính.
  • Truy vấn cơ sở dữ liệu được hiểu đơn giản là một “bộ lọc” có khả năng thu thập thông tin từ nhiều bảng trong một hệ cơ sở dữ liệu và thiết lập các các tiêu chí để hệ quản trị cơ sở dữ liệu thích hợp.

SQL là gì ? SQL là viết tắt của Structured Query Language, nghĩa là ngôn từ truy vấn cơ sở 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 cung ứng, điển hình như : Oracle Database, SQL Server, MySQL … ( Còn “ SQL Server là gì ” sẽ được giải đáp ngay phần sau dưới đây của bài viết nhé. )
Bất kì công ty nào lớn cũng cần kiến thiết 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 cơ sở tài liệu 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 lịch sử 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ể, 1 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 cơ sở tài liệu 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 .

SQL Server là gì?

SQL Server là gì? SQL Server – một phần mềm do Microsoft phát triển vào năm 1989, là hệ thống quản trị cơ sở dữ liệu quan hệ hay còn gọi là RDBMS (Relational Database Management System).

SQL Server được dùng vào việc tạo, duy trì và tàng trữ, nghiên cứu và phân tích và trích xuất cơ sở tài liệu theo nhu yếu .
Các phiên bản hiện tại của SQL Server là gì ? Hiện nay, Microsoft đang cung ứng những phiên bản SQL Server như sau được phong cách thiết kế cho từng đối tượng người tiêu dùng riêng không liên quan gì đến nhau :

Phiên bản SQL Server

Miêu tả phiên bản SQL Server

SQL Server Enterprise

Phiên bản SQL Server dành cho doanh nghiệp này phân phối khá đầy đủ những công dụng với hiệu suất cực nhanh, trực quan hóa thông tin không số lượng giới hạn và được cho phép người dùng có toàn quyền truy vấn thông tin cụ thể về tài liệu .

SQL Server Standard

Phiên bản SQL Server tiêu chuẩn được cho phép người dùng quản trị cơ sở tài liệu ở mức cơ bản để chạy những ứng dụng và tương hỗ những công cụ tăng trưởng phổ cập cho on-premise và cloud, tương thích với những công ty quy mô nhỏ hoặc có nguồn nhân lực IT hạn chế .

SQL Server Web

Phiên bản SQL Server Web là một lựa chọn với ngân sách hài hòa và hợp lý dành cho những Web hoster và Web VAP, phân phối năng lực lan rộng ra và năng lực quản trị cho những Web properties có quy mô từ nhỏ đến lớn .

SQL Server Developer

Phiên bản SQL Server Developer được cho phép developer thiết kế xây dựng bất kể loại ứng dụng nào trên SQL Server. Phiên bản này gồm có toàn bộ những tính năng của phiên bản Enterprise, nhưng được cấp phép để sử dụng như một mạng lưới hệ thống tăng trưởng và testing, không phải như một production server .

SQL Server Express

Phiên bản SQL Server Express là phiên bản đơn thuần, dễ dùng nhất, thích hợp cho những nhà tăng trưởng ứng dụng độc lập và những người mới tìm hiểu và khám phá về SQL .
Nếu cần những tính năng nâng cao hơn, bạn hoàn toàn có thể tăng cấp SQL Server Express lên những phiên bản SQL Server hạng sang hơn thuận tiện .

Đọ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ẽ thực thi những quy trình tiếp theo như : đóng gói hiệu quả, 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ì, thời điểm 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 .

Chia sẻ từ anh Hồng Minh Trí về truy vấn cơ sở dữ liệu và SQL
Ngoà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 sở hữu 3 tố chất 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 đa phần 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 tiếp 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 hoàn toàn có thể phấn đấu để trở thành Data Architect – người phong cách thiết kế ra cơ sở tài liệu cho doanh nghiệp. Muốn làm Data Architect thì nhu yếu bắt buộc là phải nắm rõ được mạng lưới hệ thống trước đã nhé .
Ngoài ra, Data Scientist cũng là vị trí đáng xem xét. Ngoài kỹ năng và kiến thức về SQL, em còn phải biết về Xác Suất thống kê và ngôn từ lập trình khác, thường là Python .

Anh nhận định và đánh giá 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 khởi đầu :

  • 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 tìm hiểu và 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ận định và đánh giá 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 biến hóa .

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 phân phối đượ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 cơ sở tài liệu 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 môi trường tự nhiên 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 tìm hiểu và 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 môi trường tự nhiên 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 môi trường tự nhiên. 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 thiên nhiên và môi trường production .
Kinh nghiệm của anh là nên dữ thế chủ động test tổng thể 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, ship hàng cho đề án chứ không có cơ sở quản trị tài liệu trong 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!

Source: https://mix166.vn
Category: Hỏi Đáp

Xổ số miền Bắc