0

我会尽力使这个问题尽可能清楚,但请记住英语不是我的第一语言。我有一个使用 MySQL 数据库用 PHP 编写的 Web 应用程序。在一个表中,我可能有数千个条目,并且在每个条目中我都存储这些数据:

$hourly_rate,
$minutes

当我通过循环处理我的表时,我使用以下公式计算净值:

$net_value = $minutes*($hourly_rate/60);

现在的问题是,我是否应该在我的表上添加一个 $net_value 字段,使用 JQUERY 在客户端计算净值,然后将计算结果上传到 $net_value 字段中?考虑到我可能有 1000 个用户同时访问系统,您认为哪种方法最好?

谢谢你的帮助,

多纳托

4

3 回答 3

1

这取决于价值的重要性。如果它一直被很多人访问,那么它可能值得存储在数据库中。

但我不建议使用 jQuery 进行计算,而是在服务器端进行以提高安全性。

于 2013-01-07T22:16:37.840 回答
0

通常我不会在数据库中存储如此简单的计算值。在 PHP 中进行计算只需要很少的时间,甚至不值得考虑。

于 2013-01-07T22:14:53.630 回答
0

将计算存储在数据库中是有充分理由的。很好的理由是这种计算可能会在应用程序中的多个地方使用。

我建议您创建一个视图,例如:

 create view vw_rates as
     select t.*, minutes*(hourly_rate/60) as net_value
     from t

通过放入一个视图,每个人都将使用相同的定义。因此,例如按地区或时间进行汇总的报告将使用相同的定义。在其他数据库中,您可以使用计算列来做同样的事情,但 MySQL 不支持它们。

从性能的角度来看,对如此少量的数据进行如此简单的计算可​​能并没有什么不同。但是请记住,如果您有多个线程/进程,数据库可以并行执行这些类型的计算。

于 2013-01-07T22:20:58.937 回答