Привет всем! В таблице есть почти 500к записей. Всего три столбца: id, url, data.
В столбце data хранится json. Каждый день выполняется запрос, который создает массив из тоже примерно 500к записей и потом циклом я проверяю есть ли в бд запись с таким url и если есть, то присваивает полю data единицу, если такого урл нет в базе, то создает новую запись.
Это всё работает ну очень долго, в районе 2х часов.
Прикрепляю код:
foreach ($data as $key => $item) {
$res = $mysqli->query("SELECT * FROM `name` WHERE url = '".$item['url']."'");
if($res->num_rows){
$mysqli->query("UPDATE `name` SET data = '1' WHERE url = '".$item['url']."'");
} else{
$mysqli->query("INSERT INTO `name` (url, data) VALUES ('".$item['url']."','".$item['price']."')");
}
}