2012-04-30 53 views
0

这是我的表格。sql重复字段

 
ProductID Title     UPC  Display 
43   Motobecane Fantom  2634 0 
14   Gravity FSX   3301 1 
19   Gravity FSX 1.0  3301 1 
56   Mango Macaw   2834 1 

我想选择具有重复UPC的行,其中Display = 1。这里是我的代码无法正常工作:

Select ProductID, Title, UPC, Display from Products 
Where Display=1 
group by UPC having count(*) > 1; 

回答

3

此解决方案假定的SQL Server:

SELECT ProductID, 
      Title, 
      UPC, 
      Display 
FROM  Products 
WHERE  UPC IN(
        SELECT UPC 
        FROM  Products 
        WHERE DISPLAY = 1 
        GROUP BY UPC 
        HAVING COUNT(UPC) > 1 
       ) 
AND  Display = 1