2009-07-30 41 views
0

昨天我问了一个类似的问题,但现在我略有转折。由于我已经给出了答案的功劳,所以我决定创建一个新问题。从PHP更新多行Mysql - 轻微扭曲

下面是我想要做的:选择任意数量的行,但是对一个字段的选定行数限制。

$query = "SELECT test_id, field1, field2 FROM tablename WHERE field1 = 'string' LIMIT 5" 

所以这里的问题:我想要一个结果,从每个“为test_id”一个最大,因此,如果行与为test_id 1中选择,那么它会跳过与为test_id 1

任何其他可能的结果

有没有想法?

编辑:GROUP BY test_id LIMIT 5 ...限制结果的总数,或具有相同test_id的总数。我想如果你使用GROUP BY test_id限制每个为test_id 1,总不超过5

致谢,
迈克尔

回答

1

,MySQL将采取行的一个获取的值。

不适用于所有的RDBMS(例如SQL服务器),因为其他人需要不在GROUP BY子句中的SELECTed字段的聚合函数。

+0

所以,如果我有一个GROUP BY为test_id ......接着是LIMIT 5 是否限制在5分总的结果,或者它限制每为test_id – Dirk 2009-07-30 19:56:44