Добрый день!
Есть таблица с товарами на 100к записей.
Нужно выбрать из нее все записи, сделать наценку (PHP ф-я это делает), а затем сделать UPDATE этой записи.
Такой запрос
$this->products = (new Query())
->select(['p.id', 'p.price'])
->from(['products p'])
->all();
Как и:
$this->products = (new Query())
->select(['p.id', 'p.price'])
->from(['products p']);
foreach($this->products->batch(1000) as $product) {
//....
}
Выполняется крайне медленно, видимо из-за занесения данных в массив. Про построчный апдейт я вообще молчу.
Но как поступить по-другому? Если с данными средствами MySQL работать не получится. на id стоит AUTO_INCREMENT PRIMARY KEY