Mar 30, 2012

売り上げ伝票のテーブルのインデックス

データベースを使うとき
なるべくシンプルな設計で
なるべく高速な処理を
したいのであるが、、、

卸売り業での
売り上げ伝票のテーブルがあるとして
テーブルのレコード項目構成は

売り上げID
商品コード
販売価格
販売日付時刻
清算フラグ
清算日付時刻

という感じである

このテーブルに
インデックスをつけで高速処理したいのであるが、
なかなか悩ましい。

多くの会計処理が月末締めの月次処理をするので
それを考えると
レコード項目に

販売年月

をわざと追加し

販売年月のインデックスを

加えると、販売日付時刻に大小範囲で絞り込むより
はるかに効率があがりそうである。

また、商品コード別分析を毎月したりするのであれば
商品コードと販売年月をセットでインデックスにする
のもよさそうである。