<分区>
假设我有一个超过 100 万行的 mysql 表。我想选择表中的所有行并单独处理每个条目。防止内存不足的最佳方法是什么?
也许使用 limit 一次选择几行?
while ( true) {
$q= query("SELECT * FROM table LIMIT $start, $limit");
// processs rows
$start += $limit;
sleep(1);
}
<分区>
假设我有一个超过 100 万行的 mysql 表。我想选择表中的所有行并单独处理每个条目。防止内存不足的最佳方法是什么?
也许使用 limit 一次选择几行?
while ( true) {
$q= query("SELECT * FROM table LIMIT $start, $limit");
// processs rows
$start += $limit;
sleep(1);
}
最佳答案
您需要使用 cursors .
网站上有非常好的 mysql 文档——例如,这可能是一个很好的起点
关于php - 一次处理行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24660144/