在PHP中计算数据库中数据的总和和百分比的最佳方法是什么?


What is the best way to calculate sum and percentage of data from database in PHP?

使用PHP和MySQL,我的表就是这样,第一个字段是"id",第二个字段是"score"等等。我想得到的分数从行id<20,也想为所有行的分数和百分比分数在每一行的总和。是否有其他方法从表中获得总和和百分比,而不是通过sql语句外的PHP语句计算?

  "SELECT score FROM Table WHERE id<20";

然后使用PHP语句计算总和和百分比。

请帮帮我

SELECT sum(score) FROM Table WHERE id<20

会给你分数的总和。

另一个SQL可以给出每个id的百分比:

SELECT id, 100.0 / :total * score FROM Table WHERE id<20

Whereaes:total是您从第一个语句中获得的总价值(我不确定PHP中执行此操作的确切语法)。

如果您对总数不感兴趣,只对百分比感兴趣,您可以将这两个查询组合起来:

SELECT id, 100.0 / (SELECT sum(score) FROM Table WHERE id<20) * score FROM Table WHERE id<20

这样行吗?

SELECT SUM(score) FROM Table WHERE id<20

最好将这些计算留给数据库:

SELECT SUM(score) FROM Table WHERE id<20

。这些将计算分数的总和。

如何使用SUM()函数?
这样的:

SELECT SUM(score) FROM Table WHERE id<20