我有table - config.架构:
config_name | config_value
我想在一个查询中更新多个记录.我试着这样:
UPDATE config
SET t1.config_value = 'value'
, t2.config_value = 'value2'
WHERE t1.config_name = 'name1'
AND t2.config_name = 'name2';
Run Code Online (Sandbox Code Playgroud)
但那个查询错了:(
你能帮助我吗?
我正在尝试使用Peewee库更新表中的许多记录。在循环内for,我获取一条记录,然后更新它,但这在性能方面听起来很糟糕,所以我需要批量更新。当前代码如下所示:
usernames_to_update = get_target_usernames()
for username in usernames_to_update:
user = User.get(User.username == username) # username is primary key
if user.type == 'type_1':
user.some_attr_1 = some_value_1
elif user.type == 'type_2':
user.some_attr_2 = some_value_2
# elif ....
user.save()
Run Code Online (Sandbox Code Playgroud)
在文档中,有insert_many功能,但没有类似的东西update_many。搜索周围我想出了这些解决方案:
但我找不到任何如何使用第二个或第三个解决方案的示例。有人可以澄清如何使用案例 2 和 3 吗?