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 làm gì với kết quả của hai truy vấn SELECT?

  1. AChỉ giữ các hàng có ở truy vấn thứ nhất mà không có ở truy vấn thứ hai
  2. BNối chúng cạnh nhau theo một khóa
  3. CKết hợp chúng thành một kết quả và loại bỏ các hàng trùng lặp
  4. DChỉ giữ các hàng xuất hiện ở cả hai
2.Dễ

Các câu lệnh như CREATE, ALTER và DROP thuộc phần nào của SQL?

  1. ANgôn ngữ định nghĩa dữ liệu (DDL)
  2. BNgôn ngữ điều khiển dữ liệu (DCL)
  3. CNgôn ngữ thao tác dữ liệu (DML)
  4. DNgôn ngữ điều khiển giao dịch (TCL)
3.Dễ

Từ khóa nào sắp xếp kết quả của một truy vấn?

  1. AARRANGE
  2. BGROUP BY
  3. CSORT
  4. DORDER BY
4.Trung bình

Dạng chuẩn thứ hai (2NF) loại bỏ:

  1. ACác khóa ngoại
  2. BCác phụ thuộc bắc cầu giữa các cột không khóa thông qua một cột không khóa khác
  3. CMọi giá trị NULL
  4. DCác phụ thuộc riêng phần của cột không khóa vào một phần của khóa phức hợp
5.Trung bình

Phát biểu nào về HAVING là đúng?

  1. ANó không thể dùng với GROUP BY
  2. BNó sắp xếp kết quả
  3. CNó phải đứng trước WHERE trong câu lệnh SELECT
  4. DNó có thể dùng các hàm tổng hợp để lọc các nhóm
6.Trung bình

Trong đại số quan hệ, toán tử phép chiếu (π) tương ứng với:

  1. AChọn cột nào xuất hiện trong kết quả
  2. BKết hợp hai bảng theo một khóa
  3. CSắp xếp kết quả
  4. DChọn những hàng nào thỏa mãn một điều kiện cho trước
7.Khó

Sau customers LEFT JOIN orders, vì sao dùng COUNT(o.id) thay vì COUNT(*) để đếm đơn hàng của mỗi khách hàng?

  1. ACOUNT(*) tính hàng điền NULL là 1 đối với khách hàng không có đơn hàng
  2. BCOUNT(o.id) chỉ đếm các khách hàng khác nhau
  3. CCOUNT(*) không được phép sau một phép nối
  4. DCOUNT(*) bỏ qua các hàng có giá trị NULL
8.Khó

Một ứng dụng chạy UPDATE item SET qty = 4, version = 8 WHERE id = 1 AND version = 7, và báo xung đột nếu không có hàng nào được cập nhật. Đây là kỹ thuật gì?

  1. AKiểm soát đồng thời lạc quan
  2. BPhân mảnh cơ sở dữ liệu (sharding)
  3. CGhi nhật ký ghi trước
  4. DKhóa hai pha chặt chẽ với khóa mức hàng

Đáp án

  1. 1. C · Kết hợp chúng thành một kết quả và loại bỏ các hàng trùng lặp
  2. 2. A · Ngôn ngữ định nghĩa dữ liệu (DDL)
  3. 3. D · ORDER BY
  4. 4. D · Các phụ thuộc riêng phần của cột không khóa vào một phần của khóa phức hợp
  5. 5. D · Nó có thể dùng các hàm tổng hợp để lọc các nhóm
  6. 6. A · Chọn cột nào xuất hiện trong kết quả
  7. 7. A · COUNT(*) tính hàng điền NULL là 1 đối với khách hàng không có đơn hàng
  8. 8. A · Kiểm soát đồng thời lạc quan

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