0

我有一个正在开发的网站,一切正常。我担心在负载下我目前做事的方式可能会导致一些服务器延迟。

在数据库中,我有一个包含大量信息的表(14 列以上和数百个条目)。PHP页面上有一个脚本来生成页面链接(第1页,共6页,下一页,上一个,第一个,最后一个等)。它目前每页显示 25 个条目。该脚本将页码乘以 25 以获得它需要从表中的哪个条目开始进行选择。

这不是太可怕,我不认为。真正的问题来自“第 x 页,共 y 页”。这意味着我需要知道将有多少页项目,或者 25 进入条目数的次数。我已经通过使用类似的东西来做到这一点:

SELECT count(id) FROM `footwear`

只是获取表中的条目数。然后使用该计数,我可以计算我所有的页面。这是最有效的做事方式吗?或者也许有更好的方法来计算页数?

4

3 回答 3

1

只要确保你有一个索引id,它在 MySQL 中会非常快。

如果您怀疑它很慢,您可以随时测量它以使您的头脑平静。

于 2013-08-01T05:50:22.983 回答
1

如果您使用的是 MyISAM,那么您很好,如果您使用 InnoDB 作为存储引擎,您可能希望缓存行数或将其存储在单独的表中,原因是 MyISAM 将保留记录表上的行数,但 InnoDB 会在您每次执行查询时计算所有行。

我希望这有帮助。

于 2013-08-01T05:52:34.813 回答
1

我可能会推荐在 MySQL 中使用查询缓存来提高总体性能。

这是启用该功能的指南:http ://www.cyberciti.biz/tips/enable-the-query-cache-in-mysql-to-improve-performance.html

于 2013-08-01T05:55:22.140 回答