如何计算 MySQL 表中列包含重复/三重数据的记录?

mysqlmysqli database更新于 2023/11/12 4:36:00

假设我们有以下名为 stock_item 的表,其中列数量具有重复值,即对于项目名称"笔记本"和"铅笔",列"数量"具有重复值"40",对于项目"衬衫"、"鞋子"和"裤子",列"数量"包含三重值 29,如表中所示。

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)

现在借助以下查询,我们可以找到"quantity"列中重复/三重值的总数。

mysql> Select COUNT(quantity) AS duplicate_triplicate
    -> from stock_item
    -> group by quantity having duplicate_triplicate> 1;

+----------------------+
| duplicate_triplicate |
+----------------------+
|                    3 |
|                    2 |
+----------------------+
2 rows in set (0.00 sec)

上述结果显示,‘quantity’ 列有一个重复了三次的值和一个重复了两次的值。


相关文章