Truy vấn dữ liệu - Phần 1¶
Tóm lược nội dung
Bài này trình bày câu lệnh SELECT để truy vấn dữ liệu từ một bảng.
Yêu cầu về cơ sở dữ liệu¶
Tiếp tục sử dụng cơ sở dữ liệu school_db đã tạo ở những bài trước.
Tải về tập tin school_db_script.sql.
Trường hợp 1: nếu school_db đã tạo hoàn chỉnh từ bài trước thì chạy mã lệnh từ dòng 108 để thêm mẫu tin vô bảng students và scores.
Trường hợp 2: nếu chưa có school_db thì xem lại các bài trước và chạy các đoạn mã trong tập tin vừa tải về.
Trường hợp 3: nếu school_db bị lỗi thì thực hiện như sau:
- Đóng hết các tab.
- Click phải lên
school_db, chọn Disconnect from database. - Click chọn cơ sở dữ liệu postgres (tức cơ sở dữ liệu mặc định khi cài đặt PostgreSQL).
- Click nút Query Tool để mở tab mới.
- Gõ và chạy lệnh:
drop database if exists school_db with (force);để xóaschool_db. - Xem lại các bài trước và chạy các đoạn mã trong tập tin vừa tải về.
Câu lệnh truy vấn SELECT¶
Để truy vấn, hoặc trích xuất, dữ liệu từ bảng, ta dùng câu lệnh SELECT.
Cú pháp SQL truy vấn dữ liệu
SELECT thuộc_tính_1, thuộc tính_2,...
FROM tên_bảng
[WHERE điều_kiện] -- (1)!
[GROUP BY thuộc_tính_cần_gom_nhóm]
[HAVING điều_kiện]
[ORDER BY thuộc_tính_cần_sắp_xếp ASC | DESC] -- (2)!
- Cặp ngoặc vuông
[ ]nghĩa là tùy chọn, có thể có hoặc không. ASClà thứ tự tăng dần,DESClà thứ tự giảm dần.
Truy vấn toàn bộ dữ liệu trong bảng¶
Dấu sao *
Dùng để đại diện cho tất cả các thuộc tính trong bảng. Đồng nghĩa với trích xuất tất cả các cột.
Ví dụ:
Dòng lệnh 2 và 3 trích xuất toàn bộ dữ liệu trong bảng students.
Chạy câu lệnh trên, kết quả như sau:
Trên thanh trạng thái bên dưới của cửa sổ pgAdmin, Total rows thể hiện số lượng mẫu tin trong kết quả truy vấn. (1)
- Mặc định, nếu số lượng mẫu tin trong bảng nhiều hơn 1000 thì pgAdmin sẽ trả về 1000 mẫu tin đầu tiên.
Chỉ định số lượng mẫu tin¶
Từ khóa LIMIT
Dùng để chỉ định số lượng mẫu tin cần trích xuất.
Ví dụ:
Dòng lệnh từ 6 đến 8 trích xuất 10 mẫu tin đầu tiên trong bảng students.
Chạy câu lệnh trên, kết quả như sau:
Chỉ định vị trí của mẫu tin bắt đầu¶
Từ khóa OFFSET
Dùng để chỉ định vị trí của mẫu tin bắt đầu. Trong đó, mẫu tin đầu tiên trong bảng có vị trí là 0.
Ta cũng có thể hiểu là chỉ định số lượng mẫu tin cần bỏ qua trước khi bắt đầu trích xuất.
Ví dụ:
Dòng lệnh từ 11 đến 14 trích xuất các mẫu tin từ vị trí 3 đến 7 trong bảng students.
Chạy câu lệnh trên, kết quả như sau:
Truy vấn thuộc tính cụ thể¶
Để truy vấn các thuộc tính cụ thể, ta chỉ định tên các thuộc tính ngay sau từ khóa SELECT.
Ví dụ:
Dòng lệnh 17 và 18 trích xuất danh sách toàn bộ học sinh và chỉ lấy các cột: cột mã lớp, cột họ và cột tên.
Chạy câu lệnh trên, kết quả như sau:
Mã nguồn¶
Code đầy đủ được đặt tại:
Sơ đồ tóm tắt¶
Some English words¶
| Vietnamese | Tiếng Anh |
|---|---|
| dấu sao | asterisk |
| mẫu tin | record |
| truy vấn | query |
| trích xuất | extract |



