mysql - 在 MySQL 中为每个客户 ID 查找重复记录

标签 mysql sql having

我尝试为每个客户查找重复记录。

表:customers_points

points_id + customers_id + points_comment 
    1           200          From Order: 5227 
    2           200          From Order: 5227 
    3           200          From Order: 5227 
    4           201          From Order: 7000 
    5           201          From Order: 7000 
    6           202          From Order: 6000 
    7           203          From Order: 8000 

结果应该是这样的:

customers_id  + duplicate_rows
    200              3
    201              2

下面是我当前的sql查询(不准确):

SELECT c.* 
FROM  `customers_points` c
INNER join (SELECT points_comment FROM `customers_points` GROUP BY points_comment HAVING count(customers_id) > 1) dup 
ON c.points_comment = dup.points_comment
WHERE c.points_date_added > '2014-04-01 12:01:00'
GROUP BY c.customers_id
ORDER BY c.points_date_added DESC limit 100

最佳答案

SELECT customers_id, count(points_comment) duplicate_rows FROM customers_points GROUP BY customers_id, points_comment

关于mysql - 在 MySQL 中为每个客户 ID 查找重复记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24330465/

相关文章:

sql - Mysql:如何选择具有特定值的组?

mysql - SQLException : Access denied when connecting to mysql in docker

python - pickle 文件而不是使用数据库

mysql - 使用 SELECT 有条件地填充列

mysql - 外键上的 SQL 索引

mysql - 计算有子项的父行数

c# - 如何依次处理两个函数调用之间的数据

mysql - 如何按出生日期搜索 SQL 记录?

sql - SQLite SQL 查询的问题

sql - 将结果限制为只有一个值只出现一次的行