T-SQL:忽略/忽略特定列的重复数据

Rai*_*bal 5 sql t-sql sql-server-2005

对于我的问题,让我们考虑以下示例表数据:

产品ID产品名称价格分类

1 Apple 5.00 Fruits
2 Apple 5.00 Food
3 Orange 3.00 Fruits
4 Banana 2.00 Fruits


我需要一个查询,它将产生以下数据集:

产品ID产品名称价格分类

1 Apple 5.00 Fruits
3 Orange 3.00 Fruits
4 Banana 2.00 Fruits


如您所见,ProductID 2已被忽略/忽略,因为Apple已存在于结果中,即每个产品必须只出现一次,无论类别或价格如何.

谢谢

Qua*_*noi 2

SELECT  *
FROM    (
        SELECT  *, ROW_NUMBER() OVER (PARTITION BY productName ORDER BY price) AS rn
        FROM    mytable
        ) q
WHERE   rn = 1
Run Code Online (Sandbox Code Playgroud)