在非数字字段上使用分组依据

时间:2012-06-09 21:26:36

标签: sql sql-server sql-server-2008

如果我有这样的表:

 ID   |   Name  |  Age 
 1    |   Bill  |  30
 2    |   Jim   |  20
 3    |   Bill  |  30
 4    |   Bill  |  30 
 5    |   Bob   |  25

我想要归还:

ID   |   Name  |  Age
1    |   Bill  |  30
2    |   Jim   |  20
5    |   Bob   |  25

我尝试了这个,但它不起作用:

 SELECT ID,Max(Name),Age FROM TABLE
 GROUP BY ID,Age

我该怎么做?

2 个答案:

答案 0 :(得分:6)

这应该有效:

select MIN(ID), NAME, AGE from TABLE group by NAME, AGE

答案 1 :(得分:-2)

按ID分组没有任何意义,因为ID已经是唯一的。

SELECT Max(Name), AGE
   FROM TABLE
   GROUP BY Age