JavaScript is required

Cơ sở dữ liệu ‘‘QuanLyTuyenSinh’’có bảng: DiemKhoiA(SoBaoDanh Nvarchar(50), DiemToan Float, DiemLy Float, DiemHoa Float, DiemUuTien Float, TongDiem Float, KetQua Nvarchar(50)). Cho biết thông tin của các thí sinh có ít nhất một trong 3 môn thi bị điểm liệt (điểm liệt = 0)?

A.

SELECT * FROM DiemKhoiA WHERE min(DiemToan, DiemLy, DiemHoa)=0

B.

SELECT * FROM DiemKhoiA WHERE DiemToan=0 or DiemLy=0 or DiemHoa=0

C.

SELECT * FROM DiemKhoiA WHERE DiemToan>=0 or DiemLy>=0 or DiemHoa>=0

D.

SELECT * FROM DiemKhoiA

Trả lời:

Đáp án đúng: B


Để tìm thông tin của các thí sinh có ít nhất một trong ba môn thi (Toán, Lý, Hóa) bị điểm liệt (điểm 0), chúng ta cần sử dụng điều kiện WHERE kết hợp với toán tử OR để kiểm tra xem môn nào có điểm bằng 0. Cụ thể:

  • Phương án A sử dụng hàm min(), hàm này không đúng trong trường hợp này vì nó tìm giá trị nhỏ nhất trong ba môn, chứ không kiểm tra xem môn nào có điểm bằng 0.
  • Phương án B sử dụng DiemToan=0 or DiemLy=0 or DiemHoa=0, đây là cách đúng để kiểm tra xem ít nhất một trong ba môn có điểm bằng 0 hay không. Nếu một trong các điều kiện này đúng, thì thí sinh đó được chọn.
  • Phương án C sử dụng DiemToan>=0 or DiemLy>=0 or DiemHoa>=0, điều này không đúng vì tất cả các thí sinh đều có điểm môn học lớn hơn hoặc bằng 0, nên điều kiện này luôn đúng và trả về tất cả các thí sinh trong bảng.
  • Phương án D trả về tất cả các thí sinh trong bảng mà không có điều kiện lọc.

Do đó, phương án B là đúng nhất.

Câu hỏi liên quan