SQL用PK获取不同的记录

时间:2012-09-14 14:24:25

标签: sql distinct

这是我的表数据......让我们调用这个表TABLEX

ID         COL1          COL2
------------------------------
 100         a             b
 101         x             y
 102         a             b
 103         c             d
 104         e             f
 105         a             b
 106         c             d
 107         x             y

我希望从此表中检索以下记录

ID         COL1          COL2
------------------------------
 100         a             b
 101         x             y
 103         c             d
 104         e             f

换句话说,我想从COL1 + COL2中检索不同的值,但也会显示记录的ID。

3 个答案:

答案 0 :(得分:3)

select min(id) as id, col1, col2
from Tablex
group by col1, col2

答案 1 :(得分:1)

我观察到您为同一个colcol2返回了最低的ID。

SELECT MIN(ID) `ID`, col1, col2
FROM tableName
GROUP BY col1, col2

答案 2 :(得分:0)

您尚未说明如何选择要为给定值集显示哪个记录ID。你的样本暗示你想要最低的那个。

SELECT MIN(id) as id, col1, col2
  FROM your_table
  GROUP BY col1,cold2
  ORDER BY MIN(id)