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

計算をデータベースに保存するのには十分な理由があります。正当な理由は、この計算がアプリケーションの複数の場所で使用される可能性があることです。

次のようなビューを作成することをお勧めします。

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

ビューを入れることで、誰もが同じ定義を使用するようになります。したがって、たとえば、地域または時間ごとに要約するレポートは、同じ定義を使用します。他のデータベースでは、計算列を使用して同じことを行うことができますが、MySQLはそれらをサポートしていません。

パフォーマンスの観点からは、このような少量のデータに対するこのような単純な計算では、おそらく違いはありません。ただし、複数のスレッド/プロセスがある場合、データベースはこれらのタイプの計算を並行して実行できることを忘れないでください。

于 2013-01-07T22:20:58.937 に答える
0

通常、このような単純な計算値はデータベースに保存しません。PHPでその計算を行うのにかかる時間は非常に短いため、考える価値すらありません。

于 2013-01-07T22:14:53.630 に答える