MySQL MySQL UPDATE查询速度慢

时间:2010-09-13 09:32:39

标签: php mysql query-optimization

我有一个包含400,000行的mysql表

每当我运行PHP脚本来更新一行时,大约需要3-4秒才能完成。

如何优化更新查询?

UPDATE `weakvocab` SET `times` = times+1, `wrong` = wrong+1, `mtime` = 1284369979 WHERE `owner` = 'owner_name' AND `vocID` = 'ID_number' AND `type` = 'type_name';

此查询是关于在回答问题后更新用户数据,因此我需要快速查询以便用户在加载下一个问题时获得更好的体验。

谢谢,

2 个答案:

答案 0 :(得分:1)

您的WHERE条件中的列是否已编入索引?将UPDATE更改为SELECT以查看Mysql如何执行它:

EXPLAIN SELECT * FROM `weakvocab` WHERE `owner` = 'owner_name' AND `vocID` = 'ID_number' AND `type` = 'type_name';

并将结果粘贴到此处

答案 1 :(得分:0)

您可以尝试在(owner_name, vocID, type)上添加索引,以便更快地找到要更新的记录。