Truy vấn là cách yêu cầu thông tin từ cơ sở dữ liệu. Truy vấn cơ sở dữ liệu bao gồm truy vấn chọn (select query) hoặc truy vấn hành động (action query). Truy vấn chọn là truy vấn để truy xuất dữ liệu, trong khi truy vấn hành động yêu cầu các hành động bổ sung được thực hiện trên dữ liệu, như xóa, chèn và cập nhật.

Ví dụ: người quản lý có thể thực hiện truy vấn để chọn những nhân viên đã được thuê cách đây 5 tháng. Kết quả có thể là cơ sở để tạo ra các đánh giá hiệu quả.

Phương pháp tạo truy vấn

Chọn các Tham số từ Menu

  • Hệ thống cơ sở dữ liệu hiển thị danh sách các tham số để bạn lựa chọn. Đây là cách đơn giản nhất để tạo truy vấn vì có các menu hướng dẫn, nhưng nó cũng kém linh hoạt nhất.

Truy vấn theo ví dụ (QBE)

  • Hệ thống hiển thị một bản ghi trống (blank record) và cho phép bạn xác định các trường (field) và giá trị xác định truy vấn.
  • Đây là một phương pháp tạo truy vấn cho phép người dùng tìm kiếm tài liệu dựa trên ví dụ ở dạng chuỗi văn bản đã chọn, hoặc ở dạng tên tài liệu, hoặc thậm chí là danh sách tài liệu. Vì hệ thống QBE phát triển truy vấn thực, nên QBE dễ nắm bắt hơn các ngôn ngữ truy vấn chính thức, mà vẫn kích hoạt mạnh mẽ cho việc tìm kiếm.
  • Về hệ thống quản lý cơ sở dữ liệu, QBE có thể được coi là một phương pháp tạo truy vấn ‘điền vào chỗ trống’. Một ví dụ về QBE là Query Design Grid từ Microsoft Access. Người dùng nhập tiêu chí vào biểu mẫu để tạo điều kiện tìm kiếm cho nhiều trường như mong muốn. Sau đó, một truy vấn được tự động tạo để tìm kiếm dữ liệu tương ứng trong cơ sở dữ liệu.

Ngôn ngữ truy vấn

Nhiều hệ thống cơ sở dữ liệu mong đợi bạn thực hiện yêu cầu thông tin thông qua một truy vấn cách điệu (stylized query) được viết bằng một ngôn ngữ truy vấn cụ thể. Đây là phương pháp phức tạp nhất vì nó bắt buộc bạn phải học một ngôn ngữ cụ thể, nhưng nó cũng là phương pháp linh hoạt nhất.

Ngôn ngữ truy vấn được sử dụng để tạo truy vấn trong cơ sở dữ liệu.

Ví dụ về ngôn ngữ truy vấn

Ngôn ngữ truy vấn có cấu trúc của Microsoft (SQL) là một ngôn ngữ truy vấn lý tưởng. Các phiên bản mở rộng khác của ngôn ngữ trong ô truy vấn (query umbrella) SQL bao gồm:

  • MySQL
  • Oracle SQL
  • NuoDB

Các ngôn ngữ truy vấn cho các loại cơ sở dữ liệu khác, chẳng hạn như cơ sở dữ liệu NoSQL và cơ sở dữ liệu đồ thị, gồm các ngôn ngữ sau:

  • Ngôn ngữ truy vấn Cassandra (CQL)
  • Neo4j’s Cypher
  • Tiện ích mở rộng khai thác dữ liệu (DMX)
  • XQuery

Tầm ảnh hưởng của truy vấn

Cơ sở dữ liệu có khả năng khám phá các chuyển động và hành động phức tạp, nhưng khả năng này chỉ được sử dụng thông qua việc sử dụng truy vấn. Một cơ sở dữ liệu phức tạp chứa nhiều bảng, trong mỗi bảng lại chứa vô số dữ liệu. Một truy vấn sẽ giúp bạn lọc nó thành một bảng, sẽ dễ dàng hơn khi bạn phân tích.

Các truy vấn cũng có thể thực hiện các phép tính trên dữ liệu của bạn, tóm tắt dữ liệu cho bạn và thậm chí tự động hóa các tác vụ quản lý dữ liệu. Bạn cũng có thể đánh giá các bản cập nhật cho dữ liệu của mình trước khi đưa chúng vào cơ sở dữ liệu, để tiếp tục đảm bảo về sự linh hoạt.

Các truy vấn có thể thực hiện đa dạng các tác vụ. Chúng được sử dụng chủ yếu để tìm kiếm qua dữ liệu bằng cách lọc các tiêu chí cụ thể. Các truy vấn khác chứa các công cụ nối thêm, bảng chéo, xóa, tạo bảng, tham số, tổng và cập nhật, mỗi công cụ thực hiện một chức năng cụ thể. Ví dụ: truy vấn tham số thực thi các điểm khác biệt của một truy vấn cụ thể, truy vấn này sẽ kích hoạt người dùng nhập một giá trị trường và sau đó nó sử dụng giá trị đó để tạo tiêu chí. Trong khi đó, truy vấn tổng cho phép người dùng tổ chức và tóm tắt dữ liệu.

Trong cơ sở dữ liệu quan hệ (relational database), bao gồm các bản ghi hoặc hàng dữ liệu, truy vấn câu lệnh SQL SELECT cho phép người dùng chọn dữ liệu và phân phối dữ liệu đó đến ứng dụng từ cơ sở dữ liệu. Truy vấn kết quả được lưu trong bảng kết quả, được gọi là tập kết quả. Câu lệnh SELECT có thể được chia thành các câu lệnh cụ thể khác, như FROM, ORDER BY và WHERE. Truy vấn SQL SELECT cũng có thể nhóm và kết hợp dữ liệu, rất hữu ích cho việc tạo phân tích hoặc tóm tắt.

 

Tổng hợp việc làm IT - Software trên VietnamWorks
VietnamWorks InTECH
Theo Teach computer science