查找重复项(一行/ ea)并列出每个查找代码的重复项数

时间:2014-10-27 18:25:22

标签: sql duplicates

我试图查询具有重复项的产品,但每个重复条目只有一行。我还希望每个条目都显示有多少人喜欢它。这是我到目前为止所做的,但它有很多错误。有关如何简化和排除故障的提示将不胜感激。

 SELECT p1.id AS product_id,
 p1.lookup_code AS product_lookup_code,
 p1.name AS product_name,
 p2.id AS duplicate_id,
 p2.lookup_code AS duplicate_lookup_code,
 p2.name AS duplicate_name,
 COUNT(*) (FROM products AS p1 INNER JOIN products AS p2 ON p1.lookup_code = p2.lookup_code 
 INNER JOIN items ON p1.id = items.product_id 
 WHERE p1.id != p2.id 
 AND items.available = true 
 AND items.visible = true 
 AND items.unlisted = false) 
 HAVING COUNT > 1 LIMIT 5000

1 个答案:

答案 0 :(得分:0)

SELECT p.id, p.lookup_code, p.name, t.duplicate_count from products p INNER JOIN (
  SELECT count(id) as duplicate_count, lookup_code from products GROUP BY lookup_code HAVING count(id) > 1
) t on t.lookup_code = products.lookup_code;