gpt4 book ai didi

php - MySQL - 如何使用一个查询更新两个表,其中表 2 值为 true?

转载 作者:行者123 更新时间:2023-11-30 00:58:21 27 4
gpt4 key购买 nike

好的,我正在尝试在不使用 PHP 和查询循环的情况下更新两个表。

表一:用户

表二:特征

两个表都有一个匹配的行“ID”(因此“users”中的 ID 1 也是“traits”中的 ID 1)。

表 1 有两行需要更新:“HP”和“EXP”。表 2 有一行:“STUFF”。

仅当 STUFF = 0 时,我需要一个简单的查询来更新 HP 和 EXP。

所以类似:

UPDATE users,traits 
SET
traits.hp = 3,
traits.exp = 10
WHERE
traits.hp < traits.maxhp
AND users.stuff = 0;

这个查询似乎可以工作,但速度很慢。有更好的办法吗?

谢谢!

-乔什

最佳答案

根据表的大小,我建议在这些表列(traits.hp、traints.maxhp 和 users.stuff)上创建几个索引,以帮助保持快速查询。

此外,请确保您的 Traits.hp 和 Traits.maxhp 设置为某种数字(例如 INT)类型,否则服务器将需要尝试即时转换它,这可能会减慢速度也下降了。

关于php - MySQL - 如何使用一个查询更新两个表,其中表 2 值为 true?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20367394/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com