JavaScript is required

Câu lệnh SQL nào sau đây có cú pháp đúng?

A.

SELECT CustomerName, COUNT(CustomerName) FROM Orders ORDER BY CustomerName

B.

SELECT CustomerName, COUNT(CustomerName) FROM Orders GROUP BY CustomerName

C.

SELECT CustomerName, COUNT(CustomerName) FROM Orders

Trả lời:

Đáp án đúng: B


Câu lệnh SQL được sử dụng để đếm số lượng bản ghi cho mỗi giá trị duy nhất trong một cột, chúng ta cần sử dụng mệnh đề GROUP BY. Mệnh đề GROUP BY nhóm các hàng có cùng giá trị trong một hoặc nhiều cột thành một nhóm tóm tắt. Trong trường hợp này, chúng ta muốn đếm số lượng đơn hàng (Orders) cho mỗi khách hàng (CustomerName), do đó chúng ta cần nhóm dữ liệu theo CustomerName.

Phương án 1 sai vì thiếu mệnh đề GROUP BY đi kèm với hàm tổng hợp COUNT(). Khi sử dụng hàm tổng hợp mà không có GROUP BY, bạn chỉ nhận được một kết quả duy nhất cho toàn bộ bảng.

Phương án 2 đúng vì sử dụng mệnh đề GROUP BY CustomerName để nhóm các đơn hàng theo tên khách hàng, cho phép hàm COUNT(CustomerName) đếm số lượng đơn hàng cho mỗi khách hàng.

Phương án 3 sai vì thiếu mệnh đề GROUP BY. Khi sử dụng hàm tổng hợp COUNT() mà không có GROUP BY, nó sẽ trả về tổng số bản ghi trong bảng, không phải số lượng bản ghi cho mỗi khách hàng.

Tổng hợp câu hỏi trắc nghiệm lập trình cơ sở dữ liệu SQL có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.


50 câu hỏi 60 phút

Câu hỏi liên quan