【发布时间】:2016-05-18 07:27:28
【问题描述】:
我见过this、this 和this,但没有一个答案能解决我的问题。由于sql_mode=only_full_group_by 错误,即使group by 也无法正常工作。
我有一个包含行的表格:
id、cId、aId、eId、val
1 231 6 56 4
2 231 6 56 7
3 451 6 30 4
4 762 7 56 4
5 342 7 32 5
6 453 7 34 6
7 342 7 32 8
我只想要基于 cId、aId 和 eId 的不同行。所以结果将是:
231 6 56
451 6 30
762 7 56
342 7 32
453 7 34
两大挑战:
1. 什么查询可以给我这个结果?
2. 数据库包含大约 1600 万行。一旦我检索到唯一的行,我将通过ResultSet 或Java 对其进行迭代。我遇到了MongoDB 的问题,当迭代一个很长的结果集时,即使我正在积极迭代,游标与数据库的连接也会超时。我被告知如果MySQL 是一个非常大的结果集,也会发生同样的情况。
所以我的问题不仅在于检索那些不同的行,还在于以一种能够一次迭代可能 10000 个块的方式获取它.我知道limit 命令,但我不知道如何在运行限制为 10000 的选择后继续从第 10001 个结果中检索。
【问题讨论】: