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ễ

UNION ALL khác UNION ở điểm nào?

  1. AUNION ALL sắp xếp kết quả
  2. BUNION ALL giữ lại các hàng trùng lặp
  3. CUNION ALL chỉ hoạt động trên một bảng
  4. DUNION ALL loại bỏ các hàng trùng lặp
2.Dễ

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

  1. AUPDATE
  2. BSELECT
  3. CCREATE
  4. DINSERT
3.Dễ

Một khách hàng có thể đặt nhiều đơn hàng, nhưng mỗi đơn hàng thuộc về đúng một khách hàng. Đây là loại quan hệ nào?

  1. AKhông-không
  2. BNhiều-nhiều
  3. CMột-nhiều
  4. DMột-một
4.Trung bình

Truy vấn nào trả về số đơn hàng của mỗi khách hàng?

  1. ASELECT DISTINCT COUNT(*) FROM orders
  2. BSELECT customer_id FROM orders WHERE COUNT(*) > 0
  3. CSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  4. DSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
5.Trung bình

EXCEPT (gọi là MINUS trong Oracle) trả về gì?

  1. ACác hàng xuất hiện trong cả hai truy vấn
  2. BCác hàng của truy vấn thứ hai không xuất hiện trong truy vấn thứ nhất
  3. CCác hàng của truy vấn thứ nhất không xuất hiện trong truy vấn thứ hai
  4. DTất cả các hàng từ cả hai truy vấn không trùng lặp
6.Trung bình

Một cột chứa các giá trị 10, 20 và NULL. AVG(col) trả về gì?

  1. A10
  2. BNULL
  3. C30
  4. D15
7.Khó

Tính năng SQL nào phù hợp nhất để tìm mọi nhân viên bên dưới một người quản lý trong một cây tổ chức có độ sâu chưa biết?

  1. AMột phép tự nối đơn của bảng employees theo manager_id
  2. BMột ràng buộc UNIQUE trên manager_id
  3. CMột GROUP BY trên manager_id
  4. DMột biểu thức bảng chung đệ quy (WITH RECURSIVE)
8.Khó

Bảng enrolment(student_id, course_id, student_name, grade) có khóa (student_id, course_id). Nó vi phạm dạng chuẩn nào?

  1. ADạng chuẩn thứ nhất, vì cột grade không chứa giá trị nguyên tử
  2. BChỉ dạng chuẩn thứ ba, vì grade phụ thuộc vào student_name
  3. CKhông vi phạm, nó đạt BCNF
  4. DDạng chuẩn thứ hai, vì student_name chỉ phụ thuộc vào student_id

Đáp án

  1. 1. B · UNION ALL giữ lại các hàng trùng lặp
  2. 2. B · SELECT
  3. 3. C · Một-nhiều
  4. 4. D · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  5. 5. C · Các hàng của truy vấn thứ nhất không xuất hiện trong truy vấn thứ hai
  6. 6. D · 15
  7. 7. D · Một biểu thức bảng chung đệ quy (WITH RECURSIVE)
  8. 8. D · Dạng chuẩn thứ hai, vì student_name chỉ phụ thuộc vào student_id

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