我想知道这是否可能?
$wpdb->delete(
\'table_name\',
array(\'id\' => array(1, 2, 3)),
array(\'%d\')
);
因此,在这种情况下,它应该一次删除3行,并且只调用数据库1次。我的脚本中有很多可以删除的内容,我希望它只执行一次删除,而不必遍历所有ID并执行
$wpdb->delete
在每一个单独。这可能吗?看起来应该是。。。
最合适的回答,由SO网友:TheDeadMedic 整理而成
不wpdb::delete
除了WHERE field = X
. 您可以使用query
方法:
$ids = implode( \',\', array_map( \'absint\', $ids ) );
$wpdb->query( "DELETE FROM table_name WHERE ID IN($ids)" );