只是想知道是否进行多次查询,即使它们被正确编入索引效率也很低。我的脚本如下。这些是使用MySQLi准备的查询。我还没有进行过压力测试,但在我继续前进之前,我只是想知道。我的剧本故事如下:
首先,我们获得有关成员所属的权限组(id =主键)
SELECT `group` FROM `members` WHERE id=? LIMIT 1
我们还希望获得有关此用户的一些个人资料信息(id =主键)
SELECT `Some_attribute` FROM `profile` WHERE id=? LIMIT 1
我们还想看看他是否有足够的钱(id =主键)
SELECT `balance` FROM `credits` WHERE `id` = ? LIMIT 1
我们想知道他是否已采取此行动(a和b是索引,单独的id是主要的)
SELECT COUNT(*) FROM `mytable` WHERE `a` = ? && `b` = ? LIMIT 1
我们将在表格中插入一个查询,我从
中取出COUNT(*)最后我们会扣钱
UPDATE `credits` SET `balance` = ? WHERE `id` = ? LIMIT 1
这相当于6个查询。这会在高负载下效率低下,还是由于索引而导致时间可以忽略不计。