Ich picke mir 100 Zeilen aus einer Tabelle, die sich während der verarbeitung nicht verändert, verarbeite diese in einer while-schleife, und markiere dann jede Zeile als erledigt:
Ich möchte den Scriptablauf beschleunigen und vermute, dass das 100-malige Updaten in der Schleife nicht grade sehr performant ist. Gibt es einen SQL-Ansatz, mit dem ich die 100 Zeilen auf einen Rutsch updaten kann. Wie müsste das aussehen?
PHP-Code:
$sql = "SELECT
id,col2
FROM
tbl
WHERE
col1 = 1
ORDER BY
id
LIMIT
100";
$erg = mysql_query($sql);
while ($row = mysql_fetch_assoc($erg)) {
// mach was mit $row['col2'];
// Zeile als erledigt markieren
$upd = "UPDATE tbl SET col1 = 0 WHERE id = " . $row['id'];
mysql_query($upd);
}
Kommentar