JavaScript is required

Cơ sở dữ liệu ‘‘QuanLyCuaHang’’có bảng: HoaDonBanHangChiTiet( HoaDonBanHangChiTietID Nvarchar(50), HoaDonBanHangFK Nvarchar(50), DmTenKhachHangREF Nvarchar(50), DmHangHoaREF Nvarchar(50), SoLuongBan Int, DonGiaBan Bigint, ThanhTienBan Bigint) Cho biết thông tin những mặt hàng bán được từ 10 sản phẩm trở lên?

A.

A.SELECT * FROM HoaDonBanHangChiTiet WHERE SoLuongBan>10

B.

B.SELECT * FROM HoaDonBanHangChiTiet WHERE SoLuongBan>=’10’

C.

C.SELECT * TOP 10 FROM HoaDonBanHangChiTiet

D.

D.SELECT * FROM HoaDonBanHangChiTiet WHERE SoLuongBan>=10

Trả lời:

Đáp án đúng: D


Câu hỏi yêu cầu tra thông tin về những mặt hàng được bán với số lượng từ 10 sản phẩm trở lên từ bảng "HoaDonBanHangChiTiet". Điều này có nghĩa là ta cần sử dụng điều kiện SoLuongBan >= 10 trong mệnh đề WHERE.

A: SELECT * FROM HoaDonBanHangChiTiet WHERE SoLuongBan > 10: Phương án này tra về những mặt hàng có số lượng bán lớn hơn 10, không bao gồm các mặt hàng bán được đúng 10 sản phẩm. Vì vậy, phương án này không hoàn toàn chính xác.

B: SELECT * FROM HoaDonBanHangChiTiet WHERE SoLuongBan >= ’10’: Phương án này cũng sử dụng điều kiện lớn hơn hoặc bằng nhưng so sánh với chuuỗi ’10’ thay vì số 10. Trong nhiều hệ cơ sở dữ liệu, việc so sánh một cột kiểu số nguyên với một chuuỗi có thể gây ra lỗi hoặc kết quả không mong muốn. Dù vậy, về mặt logic điều kiện này cũng không đúng hoàn toàn với đề bài vì dùng kí tự chuuỗi.

C: SELECT * TOP 10 FROM HoaDonBanHangChiTiet: Phương án này tra về 10 dòng đầu tiên từ bảng, không quan tâm đến số lượng bán. Vì vậy, phương án này sai.

D: SELECT * FROM HoaDonBanHangChiTiet WHERE SoLuongBan >= 10: Phương án này tra về tất cả các cột từ bảng HoaDonBanHangChiTiet, nhưng chỉ những dòng có giá trị của cột SoLuongBan lớn hơn hoặc bằng 10. Đây là phương án đúng.

Câu hỏi liên quan