【发布时间】:2011-11-26 19:06:04
【问题描述】:
我正在编写一个相当简单的 web 应用程序,它从 mysql 数据库中的 3 个表中提取数据。因为我不需要大量高级过滤,所以理论上构建并在大型多维数组中工作似乎更快,而不是尽可能地执行 mysql 查询。
理论上,我可以只从每个表中查询一个并用结果构建大型数组,基本上不需要再次查询该表。这是一个好习惯,还是在需要时只查询数据更好?或者是否存在某种平衡,如果有,是什么?
【问题讨论】:
-
除非您将其存储在会话中,否则您必须为每个请求重建您的阵列。那么数据是只读的,它会改变吗?
-
我当然需要查询来向数据库添加新数据并编辑记录,但是当我只需要显示数据时,我正在考虑数组工作。您通过会话提出了一个很好的观点,因为目前我正在每个页面加载时在头文件中构建数组。
-
“良好实践”在您知道自己需要它之前不会进行优化。话虽如此,当您在表上定义了适当的索引时,数据库查询通常会非常快。