Tại trường đại học, giáo sư của tôi đã dạy tôi năm nay rằng câu lệnh SQL này:
SELECT COUNT(length) FROM product
sẽ trở lại 2
với tập dữ liệu sau:
| product |
|id | length | code |
|-------------------|
| 1 | 11 | X00 |
| 2 | 11 | C02 |
| 3 | 40 | A31 |
Cô biện minh cho điều đó bằng cách nói rằng COUNT
không tính các bản sao.
Tôi nói với giáo sư của tôi rằng tôi nghĩ rằng cô ấy đã làm cho một lỗi. Cô ấy trả lời tôi rằng một số DBMS có thể hoặc không thể tính các bản sao.
Sau khi thử rất nhiều DBMS, tôi chưa bao giờ tìm thấy cái nào có hành vi này.
DBMS này có tồn tại không?
Có bất kỳ lý do cho một giáo sư để dạy hành vi này? Và thậm chí không đề cập đến việc DBMS khác có thể hành xử khác đi?
FYI, hỗ trợ khóa học có sẵn ở đây (bằng tiếng Pháp) . Slide liên quan nằm ở góc dưới bên trái ở trang 10.