Query là gì? Giải thích về truy vấn database cho người mới bắt đầu

Rất đơn giản, một query nghĩa là một yêu cầu truy vấn thông tin. Vậy, query trong ngôn ngữ lập trình là gì? Cũng vậy thôi – thông tin ở đây sẽ là thông tin trích xuất từ một database – cơ sở dữ liệu. Query dùng để thực hiện các thao tác lên dữ liệu đó (data manipulation) – thêm, xóa, thay đổi. Đây là ý nghĩa của từ query trong bài viết này.

Tuy nhiên, bạn sẽ không thể nhận được bất kỳ thông tin, dữ liệu nào nếu chỉ thực hiện một lệnh truy vấn tùy ý. Query của bạn phải dựa trên một cấu trúc code được định sẵn mà cơ sở dữ liệu có thể hiểu được. Cấu trúc code này có thể xem như là ngôn ngữ truy vấn – query language.

Tiêu chuẩn hiện nay của ngôn ngữ truy vấn là Structured Query Language (SQL). Hãy nhớ, SQL khác hoàn toàn với MySQL: SQL là ngôn ngữ truy vấn, còn MySQL là một phần mềm sử dụng ngôn ngữ này. Mặc dù SQL là lựa chọn phổ biến của những phần mềm database, nhưng nó không phải là duy nhất. Những ngôn ngữ khác là AQL, Datalog, DMX.

Những ngôn ngữ này đều nhằm mục đích giúp cho việc giao tiếp database dễ dàng hơn.

Vừa mới bắt đầu lập trình web? Bạn cần làm quen với việc thuê một dịch vụ host, nó phù hợp cho doanh nghiệp nhỏ và vừa hoặc dành cho các lập trình viên cần một môi trường ổn định để tập trung sáng tạo.

Query hoạt động như thế nào?

Hãy nói về một truy vấn trong đời sống hằng ngày trước. Ví dụ bạn muốn mua một ly Cà Phê Sữa Đá trong Startbucks. Bạn sẽ đưa ra yêu cầu “Cho mình ly cà phê sữa đá?”. Nhân viên pha chế sẽ hiểu yêu cầu của bạn và thực hiện đơn hàng.

Một query hoạt động tương tự. Bạn sẽ sử dụng ngôn ngữ query để gửi yêu cầu bạn muốn. Bất kể bạn sử dụng SQL hay ngôn ngữ nào khác, miễn là cả database và bạn hiểu và sử dụng chung 1 ngôn ngữ bạn sẽ có thể thực hiện truy vấn và nhận kết quả đúng như mong muốn. Dĩ nhiên rồi phải không, nếu bạn nói tiếng Pháp và nhân viên pha chế nói tiếng Việt thì anh ta sẽ không làm được ly cà phê nào cho bạn.

Chắc bạn tưởng thực hiện truy vấn là cách duy nhất để lấy dữ liệu. Không hẵn, trên thực tế có nhiều cách khác để thực hiện việc này miễn là database software. Chúng tôi tổng hợp các cách để lấy dữ liệu như sau:

  • Sử dụng tham số có sẵn
    Phần mềm mặc định có sẵn các tham số trong menu của nó. Người dùng có thể chọn, hệ thống sẽ hướng dẫn bạn cách để lấy kết quả mong muốn. Dễ thực hiện, nhưng không linh hoạt và có nhiều hạn chế về cách vận hành.
  • Sử dụng cấu trúc gợi ý
    Hệ thống sẽ hiển thị một bộ code cho bạn với các khoảng trống để điền vào, bạn có thể điền thêm giá trị là được.
  • Ngôn ngữ query
    Bạn đã biết có nhiều ngôn ngữ query. Bạn sẽ phải viết truy vấn nếu muốn sử dụng dữ liệu. Phương pháp này đòi hỏi bạn có kiến thức về ngôn ngữ query đang được database software của bạn sử dụng. Mặc dù hơi phúc tạp nhưng nó cho bạn toàn quyền kiểm soát dữ liệu.

Ví dụ một query

Giờ bạn đã biết query là gì, vậy tại sao lại không thử ngay? Hãy nhớ chúng tôi sử dụng SQL làm ngôn ngữ chính.

Nguồn dữ liệu: Participant (tên bảng)

Ví dụ bạn cần lấy một thông từ trong bảng khảo sát sau:

ID Name Sex Age Occupation
1 John Nam 17 Student
2 Peter Nam 26 Unemployed
3 Margareth Nu 34 Teacher
4 Lea Nu 34 Unemployed

Thực hành

Với SQL, bạn có thể viết các query như là SQL SELECT hay SQL ACTION. Như tên của nó, SQL SELECT giúp bạn chọn từng phần của cơ sở dữ liệu, SQL ACTION giúp bạn thực hiện những hoạt động như là xóa hoặc thêm thông tin, cập nhật giá trị hoặc tạo bảng mới. Xem các ví dụ bên dưới sẽ dễ hiểu hơn:

  • Chọn chỉ cột “Name” và “Occupation” từ bảng “participant”.
    SQL Statement:
    SELECT Name, Occupation FROM Participant
    Kết quả:

    Name Occupation
    John Student
    Peter Unemployed
    Margareth Teacher
    Lea Unemployed
  • Xóa dữ liệu từ những người đang không đi làm.
    SQL Statement:
    DELETE FROM Participant WHERE Occupation = ‘Unemployed’Kết quả:

    ID Name Sex
    Age Occupation
    1 John Nam 17 Student
    3 Margareth Nu 34 Teacher
  • Thêm một dòng vào trong bảng một người có tên Mario, 67 tuổi, đã nghĩ hưu.
    SQL Statement:
    INSERT INTO Participant (ID, Name, Sex, Age, Occupation) VALUES (‘5’, ‘Mario’, ‘Nam’, ‘67’, ‘Retired’)
    Kết quả:

    ID Name Sex
    Age Occupation
    1 John Nam 17 Student
    2 Peter Nam 26 Unemployed
    3 Margareth Nu 34 Teacher
    4 Lea Nu 34 Unemployed
    5 Mario Nam 67 Retired
  • Thay đổi công việc của Margareth thành “Trưởng phòng”.
    SQL Statement:
    UPDATE Participant SET Occupation = ‘Trưởng phòng’ WHERE ID = ‘3’
    Kết quả:

    ID Name Sex Age Occupation
    1 John Nam 17 Student
    2 Peter Nam 26 Unemployed
    3 Margareth Nu 34 Trưởng phòng
    4 Lea Nu 34 Unemployed

Lời kết

Một vài lệnh SQL, như những lệnh ở trên là tiêu biểu của những gì ngôn ngữ truy vấn có thể thực hiện. Nó giúp bạn xử lý dữ liệu hiệu quả. Hãy tưởng tượng bạn có hàng ngàn dòng dữ liệu. Kiểm soát dữ liệu như vậy không còn khó nữa. Hơn nữa, ngôn ngữ query rất dễ dùng, vì nó có ý nghĩa và dễ học sau khi bạn đã hiểu các luật cơ bản. Hãy nhanh chóng bắt tay vào nghiên cứu database query thôi, và quản lý cơ sở dữ liệu như dân chuyên nghiệp!

Giờ bạn đã biết query là gì? Nó là một truy vấn sủ dụng một ngôn ngữ database để thao túng dữ liệu trong database. Nếu bạn còn chưa rõ, hãy để lại bình luận bên dưới nhé. Hoặc bạn có câu hỏi nào cũng đừng ngại mà cho chúng tôi biết.

Author
Tác giả

Hai G.

Hải G. là chuyên gia quản lý, vận hành các dịch vụ website. Anh có nhiều năm kinh nghiệm về VPS, Hosting, technical SEO, CMS. Đặc biệt yêu thích WordPress và đã dùng nó hơn 5 năm nay. Sở thích của anh là đọc, viết blog, đi du lịch và tư vấn cho các bạn trẻ khởi nghiệp.