当前位置:首页 > mysql > 正文

mysql查询重复数据只保留一条(mysql 重复数据条数)

  • mysql
  • 2024-04-04 06:25:34
  • 7243
MySQL 查询重复数据并只保留一条
要素:
1. DISTINCT 关键字
- 用于从结果集中返回唯一 DISTINCT 的值。
- 只返回每组中的一行,而同一组中的其他重复行会被忽略。
2. GROUP BY 子句
- 用于对查询结果进行分组,并根据指定列聚合数据。
- 在 GROUP BY 语句中指定的列用于识别重复组,而只保留每组的一条记录。
3. HAVING 子句
- 用于在 GROUP BY 子句之后过滤分组结果。
- 可用于限制返回的行数,例如只返回一行的重复数据。
示例:
查询表 'users' 中重复的姓名,并只保留每人一条记录:
sql
SELECT DISTINCT name
FROM users;
查询表 'products' 中重复的类别,并只保留每个类别一条记录:
sql
SELECT DISTINCT category
FROM products
GROUP BY category;
查询表 'orders' 中重复的订单号,并只保留总金额大于 100 的记录:
sql
SELECT DISTINCT order_id
FROM orders
GROUP BY order_id
HAVING SUM(amount) > 100;