Up5me
Trang chủ > Câu hỏi lẻ > 8vO9odFb_iWb

Đề bài

Cho bảng NGUOI_DOC trong CSDL thư viện của một trường học có các trường và dữ liệu minh hoạ như hình sau:

Câu lệnh truy vấn SQL nào sau đây biểu diễn đúng cho yêu cầu: "Đưa ra họ tên, lớp

của người đọc có số thẻ thư viện là HS-010."?

SELECT NGUOI_DOC FROM WHERE ma_the = 'HS-010'
SELECT ho_ten, lop FROM NGUOI_DOC WHERE ma_the = 'HS-010'
SELECT ho_ten, lop FROM SACH WHERE ma_the = 'HS-010'
SELECT * FROM NGUOI_DOC
Đáp án đúng: B

Xem lời giải

Phương pháp giải

Lời giải chi tiết

Để giải quyết yêu cầu "Đưa ra họ tên, lớp của người đọc có số thẻ thư viện là HS-010," ta cần sử dụng câu lệnh SQL để truy vấn bảng NGUOI_DOC và chọn ra các trường ho_tenlop dựa vào điều kiện ma_the là 'HS-010'. Phân tích từng phương án:

  • A. SELECT NGUOI_DOC FROM WHERE ma_the = 'HS-010'
    • Phương án này sai vì cú pháp không đúng, thiếu định danh của bảng sau FROM và thiếu các trường cần chọn.
  • B. SELECT ho_ten, lop FROM NGUOI_DOC WHERE ma_the = 'HS-010'
    • Phương án này đúng vì nó chọn đúng các trường ho_tenlop từ bảng NGUOI_DOC với điều kiện ma_the = 'HS-010'.
  • C. SELECT ho_ten, lop FROM SACH WHERE ma_the = 'HS-010'
    • Phương án này sai vì SACH không phải là bảng đúng, mà thông tin cần tìm lại nằm ở bảng NGUOI_DOC.
  • D. SELECT * FROM NGUOI_DOC
    • Phương án này sai vì có thể chọn toàn bộ các bản ghi, trong khi yêu cầu chỉ cần chọn những thông tin có ma_the là 'HS-010'.

Vậy phương án đúng là B. SELECT ho_ten, lop FROM NGUOI_DOC WHERE ma_the = 'HS-010'.

Chú ý khi giải

  • Chú ý cú pháp câu lệnh SQL, đặc biệt là các từ khóa như SELECT, FROM, WHERE.
  • Đảm bảo rằng bảng, trường và điều kiện đều được viết chính xác.
  • Cần lưu ý kiểm tra đúng bảng đang truy vấn để tránh nhầm lẫn.