Sử dụng cùng bảng stock_item như ví dụ trước, cột quantity có giá trị trùng: 40 (2 lần) và 29 (3 lần).
mysql> Select * from stock_item; +------------+----------+ | item_name | quantity | +------------+----------+ | Calculator | 89 | | Notebooks | 40 | | Pencil | 40 | | Pens | 32 | | Shirts | 29 | | Shoes | 29 | | Trousers | 29 | +------------+----------+ 7 rows in set (0.00 sec)
Có 2 giá trị trùng lặp (40 và 29). Truy vấn sau đếm tổng số bản ghi trùng lặp:
mysql> Select count(*) AS Total_duplicate_count
FROM (SELECT item_name FROM stock_item
GROUP BY quantity HAVING COUNT(quantity) > 1) AS X;
+-----------------------+
| Total_duplicate_count |
+-----------------------+
| 2 |
+-----------------------+
1 row in set (0.00 sec)
Giải thích:
- Truy vấn con nhóm theo
quantityvà lọc nhóm cóCOUNT > 1 - Truy vấn ngoài đếm số nhóm như vậy (
COUNT(*)) - Kết quả = 2 (có 2 giá trị quantity bị trùng: 40 và 29)