MySQL中的最后一项COUNT(*)结果?

mik*_*ike 1 mysql sql

快速问题...我有一个查询检查重复项,如下所示:

 SELECT COUNT( * ) AS repetitions, Name, Phone, ID, categoryid, State
 FROM users 
 GROUP BY Name, Phone, State
 HAVING repetitions > 1 
 ORDER BY ID DESC
Run Code Online (Sandbox Code Playgroud)

这是有效的,但MySQL返回一组重复项中的第一个ID.例如,假设我有2行.第一行的ID为1,第二行的ID为2,名称,电话和状态具有相同的数据...如何获得上述查询以返回计数但ID为"2"而不是"1"?

谢谢!;)

Asa*_*aph 5

使用max()聚合函数:

SELECT COUNT(*) AS repetitions, max(ID) FROM users GROUP BY Name, Phone, State HAVING repetitions > 1 ORDER BY ID DESC
Run Code Online (Sandbox Code Playgroud)