私はアイテムの動きを追跡するためにmysqlで非常に単純なデータベースを実行しています。現在の書式は次のようになります。アイテム移動日々コレクションデータベース設計システムの問題
Date totalFromPreviousDay NewToday LeftToday RemainAtEndOfDay
1.1.2017 5 5 2 8 (5+5-2)
2.1.2017 8 3 0 11 (8+ 3 -0)
3.1.2017 11 0 5 6 (11+0-5)
などです。私のテーブルでは、フロントエンドでのみ表示するtotalFromPreviousDayとRemainAtEndOfDay計算フィールドを作成したいと思います。これは、主に、エラーのために紙で消去される傾向があるからです。他の2つのフィールドの変更に基づいて反映されるようにします。今、私が直面しています問題は、私は、任意の日付を選択して、その日の開始時や、前から5つの項目があった」と言うことができるようにしたい
id
date
NewToday
LeftToday
:そのように、私はこのように私のテーブルをしました日が5回追加され、0が残り、10日が終了しました。 "
これまでのところ、私はそれについては考えていません。理論的には、私はこのようなことを試してみたい:要求された日が2017年2月1日であれば、データ収集を開始した日である0から開始する。そうでない場合は、0のレコードをループし、要求された日付が見つかるまで数式を実行します。
しかし、それは毎回最後までフォームの最初の日付を開始する必要があるので、明らかに非効率です。
私のアプローチはOKですか、それともテーブルに列を含める必要がありますか?最初の場合は、python/mysqlでそれを行う方法は何でしょうか?
@ Shadow ....ありがとう。実際には、アイテムの種類だけがあるので、アイテムテーブルを作成する理由はありません。私たちが望むのは、基本的に1ヶ月の初めにそこにあったアイテムの数(前の月の最後の日から最後に残ったアイテムの数)と、その月の終わり(最後の日)に残ったアイテムの数です。 –
さて、私はあなたにこれについて動作するバージョンを説明しました。 – Shadow