首页 > 文章列表 > 我们如何计算 MySQL 表中列包含重复/三重数据的记录?

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

227 2023-09-02

假设我们有名为 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)

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

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”列有一个重复 3 次的值和一个重复两次的值。