$wpdb的增量值(Value=Value+1)->更新 时间:2012-09-21 作者:supersuphot 此sql查询$wpdb->query("UPDATE log SET total=total+1 WHERE id=\'1\')"); 如何将其转换为$wpdb->update()语句?例如:。$wpdb->update(\'log\', array(\'total\'=>\'total+1\'), array(\'id\'=>\'1\')); 2 个回复 最合适的回答,由SO网友:Otto 整理而成 不需要。不需要使用WPDB update()函数。update函数假定列的值是字符串。您可以使用format参数覆盖它,但它只允许%d、%f和%s(整数、浮点、字符串)。它不允许对total+1这样的列进行操作。您必须直接使用query()函数来进行更新。 SO网友:Jiju Thomas Mathew 通过使用查询方法,您可能面临清理问题的风险。通过使用更新方法,您将面临竞争条件的风险。为了克服这两个问题,就在更新之前,在行上发出一个select,最后一个子句是“FOR update”。要获取结果,可以使用与update和get\\u row方法相同的条件。唯一需要注意的是,如果您的条件遇到多行,那么除了使用wpdb的查询方法之外,没有其他方法。 结束 文章导航