PHP/mysql - 查询与数组?

标签 php mysql theory

我正在编写一个相当简单的 webapp,它从 mysql 数据库的 3 个表中提取数据。因为我不需要大量的高级过滤,所以理论上构建大型多维数组然后在其中工作似乎比尽可能执行 mysql 查询更快。

理论上,我可以只对每个表进行一次查询,然后用结果构建大型数组,基本上不需要再次查询该表。这是一个好的做法,还是只在需要时查询数据更好?或者是否存在某种平衡,如果有,它是什么?

最佳答案

PHP 数组可以非常快,但这取决于那些表有多大,当数字变得巨大时 MySQL 会更快,因为有了正确的索引,它不必扫描所有数据,但是只需选择您需要的即可。

我不建议你尝试你的建议,MySQL 有一个查询缓存,所以重复的查询甚至不会命中磁盘,所以在某种程度上,你正在考虑的优化已经完成了。

最后,正如 Chris 所说,永远不要在不需要的时候考虑优化。

关于好的做法,一个好的做法是编写最简单(且易于阅读)的代码来完成这项工作。

如果最终您决定应用优化、分析性能,您可能会对意想不到的结果感到惊讶。

关于PHP/mysql - 查询与数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8280861/

相关文章:

node.js - 编写大量类似函数/流程的最佳实践

php - 如何在 Silex 中为一个请求定义多个路由?

php - AJAX PHP 回显 js 代码,不起作用

Python peewee sqlite 数据库在 phpmyadmin 中打开?

oop - 封装通用逻辑(领域驱动设计、最佳实践)

java - 通过访问方法引用属性还是直接在父类(super class)中引用属性?

php - Symfony2 表单,与实体不匹配

php - 使用 php 从 MySQL 中检索数据

PHP 的explode() 和 SQL 查询问题

mysql - TypeError - indexOf 不是函数(使用 MySQL 进行数据搜索)