2012-04-26 43 views
0

鉴于下表,我想实现这个逻辑到我的查询中:如果2个UPC是相同的,则显示具有最高PRODUCTID值的行。所以,在我的表这将是第2行。sql/coldfusion显示重复行

 
PRODUCTID  UPC 
100    01434 
101    01434 
102    05877 

这里是我的代码,我需要

<cfquery name="GetData" datasource="#Application.ds#" dbtype="ODBC" username="#Application.UserName#" password="#Application.Password#"> 
Select PRODUCTID, UPC 
FROM Products 
Where ... 
</cfquery> 
+1

您是否需要显示其他列表 - 除了'UPC'和'ProductID'? (另外,请更新标签以指示您正在使用的数据库类型) – Leigh 2012-04-26 03:23:08

+1

..并且这与您的其他问题有关吗? http://stackoverflow.com/questions/10289032/sql-coldfusion-delete-duplicate-rows ie你最终试图删除重复的行吗? – Leigh 2012-04-26 03:30:27

回答

3
SELECT MAX(PRODUCTID) AS PRODUCTID, UPC 
FROM Products 
GROUP BY UPC 
HAVING COUNT(UPC) > 1 
+0

我不明白为什么你在那里有HAVING,现在你已经从结果中删除了ProductID 102。 – Busches 2012-04-26 12:57:02

+0

我使用了Nick的代码,但稍加修改为SELECT MAX(PRODUCTID)AS PID – Dmitry 2012-04-26 15:25:48