我在某处读到了这个:
当你刚接触MySQL时,用你所熟悉的语言解决问题很诱人。这可能导致不必要的和更慢的代码。例如,不是使用MySQL的原生AVG()函数,而是使用PHP循环通过对记录集中的所有值求和来计算平均值。
还要注意PHP循环中的SQL查询。通常,运行查询然后遍历结果会更有效。
通常,在分析数据时利用数据库的优势。一点SQL知识都有很长的路要走。
我的判决:我认为这没有任何意义。如果一张表有数百万条记录,那么就不需要获取数百万条记录来获得平均值。我更好地获取平均值。
注意:如果应用程序和数据库服务器不同,它会更有意义,因为传输时间会很长。
只想了解MySQL专家对此的判断。
答案 0 :(得分:1)
作为我的观点当表格当时有大量记录时,AVG()计算将仅在数据库方面完成,如果你将这些数据提取到PHP中并进行计算则需要花费太多的时间。它会降低性能。所以只计算数据库内部的平均值是好的。
还有一件事你告诉我在分析数据时利用数据库的力量,这是完全正确的。否则数据库函数的用途是什么。