ホームページ >バックエンド開発 >PHPチュートリアル >このようなデータの統計はどのように行うのでしょうか?
店員には 1W というメンバーのテーブルがあり、店員には推奨メカニズムがあります (店員はほぼ無制限のレベルを推奨できます)。
店員の販売実績テーブル member_sales もあります。店員が販売を行うたびに、データが member_sales に書き込まれます。
今、私は事務員とその部下の事務員全員の日次売上高を毎日数えなければなりません。もし彼が私のパフォーマンス要件を満たしていれば、ボーナスを与えます。
現時点ではデータがあまりありません。1 時間ごとに 2,000 人の店員をカウントするために 5 つの crontab を開き、完了するまでに 5 時間かかりました。
でも、店員が増えたらこの愚かなやり方は通用しなくなるのではないかと心配ですが、どうしたらいいでしょうか?
店員にはメンバーと呼ばれる1Wがあり、店員はほぼ無制限のレベルを推薦できます。
店員の販売実績テーブル member_sales もあります。店員が販売を行うたびに、データが member_sales に書き込まれます。
今、私は事務員とその部下の事務員全員の日次売上高を毎日数えなければなりません。もし彼が私のパフォーマンス要件を満たしていれば、ボーナスを与えます。
現時点ではデータがあまりありません。1 時間ごとに 2,000 人の店員をカウントするために 5 つの crontab を開いたところ、作業は 5 時間で完了しました。
でも、店員が増えたらこの愚かなやり方は通用しなくなるのではないかと心配ですが、どうしたらいいでしょうか?
データベースを使用します。mysql は十分に簡単です
データベースを使用してデータの統計を作成し、後でデータ分析を行うことができるかもしれません
毎朝早朝に 1 回実行するだけです。1 時間ごとに実行する必要はありません。
データベースは使用されますか?
具体的にはどのようなタスクが実行されますか? sql
查询不可能一个小时才2000个啊,crontab
この規模のリレーショナル データベースは完璧です
カウントしている SQL に何か問題があるはずです。ループ選択が埋め込まれていますか?
もう一度やってください。事務員のツリー構造の設計に問題があり、統計ロジックが間違っていたため、数十文では説明できないくらい時間がかかりました。
店員はツリー構造を持つ必要があり、彼の販売実績は彼自身とすべてのサブノードの販売実績の合計です。
さらに、member_sales テーブルには販売日と販売時間の 2 つのフィールドが必要です。販売日は統計に使用され、販売時間のフォーマットによって日付を変換することはできません。
ツリー構造は無制限の分類を参照できます。
スケジュールされたタスクのすべての SQL とプログラムを投稿して見てください