如何使用 JOIN 在 MySQL 表中查找重复值?


假设我们在名为“stock_item”的表中,其中 quantity 列具有重复值,即对于项目名称“Notebooks”和“Pencil”,Quantity 列具有表中所示的重复值“40”。

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 JOIN 的以下查询,我们可以查找 quantity 列中的重复值以及项目名称。

mysql> Select distinct g.item_name,g.quantity from stock_item g
   -> INNER JOIN Stock_item b ON g.quantity = b.quantity
   -> WHERE g.item_name<>b.item_name;
+-----------+----------+
| item_name | quantity |
+-----------+----------+
| Pencil    |       40 |
| Notebooks |       40 |
| Shoes     |       29 |
| Trousers  |       29 |
| Shirts    |       29 |
+-----------+----------+
5 rows in set (0.00 sec)

更新日期: 2020 年 2 月 10 日

63 次浏览

启动你的 职业

通过完成课程获取认证

开始
广告