选择两列的唯一组合

时间:2014-11-13 07:57:56

标签: mysql qsqlquery

示例数据:

ProductID    PackingID
-------      ---------
1            2
1            2
3            2
3            2
1            1
2            1
3            2

我有上面的示例数据。我想要的是选择组合productIDpackingID的唯一(非明显)行。在上面的例子中,唯一匹配的结果是

ProductID    PackingID
-------      ---------
1            1
2            1

这些行是ProductIDPackingID的唯一组合。我不希望得到明显的结果,因为它会给我一个其他组合。

3 个答案:

答案 0 :(得分:2)

SELECT ProductID, PackingID
FROM yourtable
GROUP BY ProductID, PackingID
HAVING COUNT(*) = 1

答案 1 :(得分:1)

SELECT PRODUCTID,PACKINGID FROM DTEMP
GROUP BY PRODUCTID,PACKINGID
HAVING COUNT(PRODUCTID)=1 
ORDER BY 1;

你可以尝试这个,这就是我在oracle中的表现...获取唯一的行而不使用distinct。

答案 2 :(得分:0)

你的桌子应该像:

 uniqueID   ProductID   PackingID
   1          x            y
   2          x            y
   3          z            x

查询:

SELECT uniqueID,ProductID,PackingID
FROM yourtable
WHERE uniqueID IN
(
    SELECT MIN(uniqueID)
    FROM yourtable
    GROUP BY ProductID,PackingID
)