具体数据库搜索

时间:2014-12-02 16:39:42

标签: mysql

我正在寻找一种显示来自不同群组的单行的方法。 我的意思是,如果我有例如表:

id|name|groupID
1 |....|  1
2 |....|  1
3 |....|  1
4 |....|  2
5 |....|  2
6 |....|  3
7 |....|  4
8 |....|  4
9 |....|  4

它将只显示每个groupID中的一行,一个用于groupID = 1,一个groupID = 2,依此类推。 提前感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

试试这个:

select *
  from tableName
  where id in (
    select max(id) from tableName group by groupID
  )

答案 1 :(得分:0)

Group by doc

  

GROUP BY语句与聚合函数结合使用,可以按一列或多列对结果集进行分组。

Sql:

SELECT * FROM my table GROUP BY goupID

返回应该是:

id|name|groupID
1 |....|  1
4 |....|  2
6 |....|  3
7 |....|  4

Distinct doc

  

在表格中,列可能包含许多重复值;有时您只想列出不同的(不同的)值。

Sql:

SELECT DISTINCT(goupID) FROM my table

返回应该是:

groupID
1
2
3
4

希望能帮助你。