Ngôn ngữ truy vấn có cấu trúc cung cấp cho người dùng cơ sở dữ liệu một cơ chế truy xuất dữ liệu linh hoạt và mạnh mẽ — câu lệnh CHỌN. Trong bài viết này, chúng ta sẽ xem xét dạng tổng quát của câu lệnh SELECT và cùng nhau tổng hợp một số truy vấn cơ sở dữ liệu mẫu. Nếu đây là bước đột phá đầu tiên của bạn vào thế giới của Ngôn ngữ truy vấn có cấu trúc, bạn có thể muốn xem lại các nguyên tắc cơ bản của SQL trước khi tiếp tục. Nếu bạn đang muốn thiết kế một cơ sở dữ liệu mới từ đầu, thì việc học cách tạo cơ sở dữ liệu và bảng trong SQL sẽ chứng minh một điểm xuất phát tốt.
Bây giờ bạn đã nắm bắt được những kiến thức cơ bản, hãy bắt đầu khám phá câu lệnh SELECT. Như với các bài học SQL trước, chúng ta sẽ tiếp tục sử dụng các câu lệnh phù hợp với tiêu chuẩn ANSI SQL. Bạn có thể muốn tham khảo tài liệu dành cho DBMS của mình để xác định xem nó có hỗ trợ các tùy chọn nâng cao có thể nâng cao hiệu quả và/hoặc hiệu quả của mã SQL của bạn hay không.
Hình thức chung của câu lệnh SELECT xuất hiện bên dưới:
CHỌN select_list
TỪ nguồn
điều kiện WHERE
NHÓM THEO biểu thức
điều kiện CÓ
ĐẶT HÀNG THEO biểu thức
Dòng đầu tiên của câu lệnh cho bộ xử lý SQL biết rằng lệnh này là câu lệnh CHỌN và chúng tôi muốn truy xuất thông tin từ cơ sở dữ liệu. select_list cho phép chúng tôi chỉ định loại thông tin mà chúng tôi muốn truy xuất. Mệnh đề FROM trong dòng thứ hai chỉ định (các) bảng cơ sở dữ liệu cụ thể có liên quan và mệnh đề WHERE cho chúng ta khả năng giới hạn kết quả đối với những bản ghi đáp ứng (các) điều kiện đã chỉ định . Ba mệnh đề cuối cùng đại diện cho các tính năng nâng cao nằm ngoài phạm vi của bài viết này – chúng ta sẽ khám phá chúng trong các bài viết SQL trong tương lai.
Cách dễ nhất để học SQL là lấy ví dụ. Với ý nghĩ đó, chúng ta hãy bắt đầu xem xét một số truy vấn cơ sở dữ liệu. Trong suốt bài viết này, chúng tôi sẽ sử dụng bảng nhân viên từ cơ sở dữ liệu nguồn nhân lực hư cấu của Tập đoàn XYZ để minh họa tất cả các truy vấn của chúng tôi. Đây là toàn bộ bảng:
Mã hiệu công nhân |
Họ |
Tên đầu tiên |
Lương |
báo cáo đến |
1 |
thợ rèn |
John |
32000 |
2 |
2 |
Scampi |
kiện |
45000 |
VÔ GIÁ TRỊ |
3 |
kendall |
tom |
29500 |
2 |
4 | Jones | Áp-ra-ham | 35000 | 2 |
5 | Allen | Hóa đơn | 17250 | 4 |
6 | Reynolds | Allison | 19500 | 4 |
7 | Johnson | katie | 21000 | 3 |
Giám đốc Nhân sự của Tập đoàn XYZ nhận báo cáo hàng tháng cung cấp thông tin về lương và báo cáo của từng nhân viên công ty. Việc tạo báo cáo này là một ví dụ về dạng đơn giản nhất của câu lệnh CHỌN. Nó chỉ đơn giản là truy xuất tất cả thông tin có trong bảng cơ sở dữ liệu — mọi cột và mọi hàng. Đây là truy vấn sẽ đạt được kết quả này:
LỰA CHỌN *
TỪ nhân viên
kiểu dữ liệu=”mã”>
Khá đơn giản, phải không? Dấu hoa thị (*) xuất hiện trong select_list là ký tự đại diện được sử dụng để thông báo cho cơ sở dữ liệu rằng chúng tôi muốn truy xuất thông tin từ tất cả các cột trong bảng của nhân viên được xác định trong mệnh đề TỪ. Chúng tôi muốn truy xuất tất cả thông tin trong cơ sở dữ liệu, vì vậy không cần thiết phải sử dụng mệnh đề WHERE để hạn chế các hàng được chọn từ bảng. Đây là kết quả truy vấn của chúng tôi trông như thế nào:
Mã hiệu công nhân | Họ | Tên đầu tiên | Lương | báo cáo tới |
———- | ——– | ——— | —— | ——— |
1 | thợ rèn | John | 32000 | 2 |
2 | Scampi | kiện | 45000 | VÔ GIÁ TRỊ |
3 | kendall | tom | 29500 | 2 |
4 | Jones | Áp-ra-ham | 35000 | 2 |
5 | Allen | Hóa đơn | 17250 | 4 |
6 | Reynolds | Allison | 19500 | 4 |
7 | Johnson | katie | 21000 | 3 |