2013-06-12 22 views
0

表:如何编写查询以在分组行中查找重复值?

locations 
--------- 
contract_id INT 
order_position INT # I want to find any bad data in this column 

我想给定contract_id内找到任何重复order_position秒。

因此,例如,像如果两个locations行过的“24845”一个contract_id两者具有“3”的order_position任何情况。

我正在使用MySQL 5.1。

回答

1

HAVING子句可以告诉你在哪里重复存在的实例:

SELECT * 
FROM locations 
GROUP BY contract_id, order_position 
HAVING COUNT(*) > 1 
3
select contract_id, order_position 
from locations 
group by contract_id, order_position 
having count(*) > 1 
1
SELECT contract_id, order_position, count(*) 
FROM locations 
GROUP BY contract_id, order_position 
HAVING count(*) > 1 
相关问题