【发布时间】:2017-02-13 08:43:41
【问题描述】:
我有一百万行表。我需要从 15k 长列表中删除某一列等于其中一个值的所有行。
现在我将它设置为:
$list = array(
"Item1",
...
"Item15000"
);
foreach ($list as $item){
$sql = "Delete from table where `item`='$item'";
if ($con->query($sql) === TRUE) {
echo "$item removed from table <br>";
} else {
echo "Error removing $item from shop_meta: " . $con->error . "<br>";
}
}
在目前的状态下,它需要很多小时才能完成,而且我也必须为许多其他类似的表格这样做。
如何加快或优化查询?有没有办法一次查询它们以更快地完成?
【问题讨论】:
标签: php mysql sql innodb sql-delete