我正在使用 Yii2 高级模板。我必须在 MySql 数据库中插入 1000 到 2000 条记录。
是否可以在 Yii2 中进行多个 UPSERT 查询。
请帮助我提出您的建议/答案。谢谢。
最佳答案
从版本 2.0.14 开始,您可以使用 upsert()。
您的代码可能如下所示:
$insertValues = [
'timestamp' => gmdate('YmdH'),
'entry_id' => $this->id,
'view_count' => 1,
];
$updateValues = ['view_count' => new \yii\db\Expression('table_name.view_count + 1')];
Yii::$app->db->createCommand()->upsert('table_name', $insertValues, $updateValues)->execute();
您可以在此处找到完整的文档:https://www.yiiframework.com/doc/api/2.0/yii-db-command#upsert()-detail
关于mysql - 如何在 Yii2 中制作多个 UPSERT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41178664/