Phiếu bài tập Cơ sở dữ liệu và SQL có đáp án

Phiếu bài tập Cơ sở dữ liệu và SQL miễn phí để in: 8 bài từ cơ bản đến mức đề thi, kèm đáp án. In ra hoặc lưu thành PDF.

Dành cho giảng viên: miễn phí in, sao chép và sử dụng trên lớp. Mỗi phiếu bài tập mới có số liệu mới và đáp án riêng. Chúng tôi rất cảm ơn nếu bạn đặt liên kết đến ExamProblems trên trang môn học.

Tên: ____________________   Ngày: ____________

1.Dễ

Từ khóa SQL nào loại bỏ các hàng trùng lặp khỏi kết quả?

  1. AUNIQUE
  2. BDIFFERENT
  3. CSINGLE
  4. DDISTINCT
2.Dễ

Câu lệnh SQL nào truy xuất dữ liệu từ một bảng?

  1. ACREATE
  2. BINSERT
  3. CUPDATE
  4. DSELECT
3.Dễ

CROSS JOIN trả về gì?

  1. AChỉ các hàng của bảng thứ nhất
  2. BMọi tổ hợp các hàng của hai bảng
  3. CChỉ các hàng khớp nhau theo một cột khóa chung
  4. DChỉ các hàng không khớp
4.Trung bình

Sinh viên có thể học nhiều môn và môn học có nhiều sinh viên. Điều này được mô hình hóa trong các bảng như thế nào?

  1. ABằng một danh sách id môn học lưu trong một cột
  2. BBằng một cột khóa ngoại course_id trong bảng students trỏ tới courses
  3. CBằng cách gộp students và courses thành một bảng
  4. DBằng một bảng trung gian chứa các khóa ngoại tới cả students và courses
5.Trung bình

View trong SQL là:

  1. AMột loại chỉ mục
  2. BMột màn hình trong ứng dụng khách cơ sở dữ liệu để duyệt các bảng
  3. CMột truy vấn được lưu trữ hoạt động như một bảng ảo
  4. DMột bản sao của bảng trên đĩa
6.Trung bình

Bảng orders có 5 hàng, mỗi hàng tham chiếu đến một khách hàng hiện có. Bảng customers có 3 hàng. INNER JOIN theo customer_id trả về bao nhiêu hàng?

  1. A15
  2. B5
  3. C8
  4. D3
7.Khó

Vì sao NATURAL JOIN bị coi là rủi ro trong các truy vấn sản xuất?

  1. ANó bỏ qua khóa chính và khóa ngoại và chỉ giữ các hàng NULL
  2. BKhông cơ sở dữ liệu nào hỗ trợ nó
  3. CNó nối trên mọi cột cùng tên, nên một cột mới có thể âm thầm thay đổi kết quả
  4. DNó luôn trả về tích Descartes
8.Khó

Vì sao một truy vấn với WHERE YEAR(order_date) = 2025 có thể không dùng chỉ mục trên order_date?

  1. AÁp dụng một hàm lên cột ngăn việc tra cứu phạm vi chỉ mục đơn giản
  2. BChỉ mục trên order_date chỉ được dùng cho mệnh đề ORDER BY, không bao giờ cho WHERE
  3. CChỉ mục không bao giờ hoạt động với ngày tháng
  4. DYEAR không phải là SQL hợp lệ

Đáp án

  1. 1. D · DISTINCT
  2. 2. D · SELECT
  3. 3. B · Mọi tổ hợp các hàng của hai bảng
  4. 4. D · Bằng một bảng trung gian chứa các khóa ngoại tới cả students và courses
  5. 5. C · Một truy vấn được lưu trữ hoạt động như một bảng ảo
  6. 6. B · 5
  7. 7. C · Nó nối trên mọi cột cùng tên, nên một cột mới có thể âm thầm thay đổi kết quả
  8. 8. A · Áp dụng một hàm lên cột ngăn việc tra cứu phạm vi chỉ mục đơn giản

Lời giải đầy đủ từng bước: hãy luyện chủ đề này trên examproblems.com.