MySQL SELECT(多次)或SELECT一次然后使用数组作为变量

时间:2013-06-11 15:22:06

标签: php mysql

例如发票的MySQL表(日期,金额,买方名称等)。

用户想要选择(显示/回显)在特定月份(例如,4月)发出的发票。

然后,用户决定是否需要显示4月份发出的发票和特定买家。

我想有两个选择:

1)在每个请求上执行MySQL SELECT并获取所需的数据,或

2)只有一个MySQL SELECT和fetch;创建一个带有获取结果的数组;然后使用/ process array

问题是哪种选择对性能更好?许多MySQL SELECT使用服务器资源;但另一方面,为了保持在内存中,阵列也使用资源。哪个选项使用的资源更少?

2 个答案:

答案 0 :(得分:1)

始终使用数据库来获取数据。尝试获得最小的金额,按&数据库的总和/计数。使用LIMIT等进行分页。这样你就不必拥有一个大型数组。

如果您正在处理大型集,则以块的形式而不是行来获取它们。对不起 - 不是PHP专家,所以无法确定PHP的确切术语,但我认为mysql_fetch_assoc就是你所追求的。

答案 1 :(得分:0)

我取决于您必须从该数据库获取当月所有发票的数据量。但我一般会使用MySQL查询过滤结果。在过滤结果时,Mysql查询比在php上执行更快更优化。