重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

MySQL5で、下記の売上単価 A と売上記録 B より売上金額 C を算出可能でしょうか?

■売上単価 A (いつでも単価の変更ができる)
id|datetime|money
1 |2007/4/1 12:00 |100円
1 |2007/4/1 12:29 |1円

■売上記録 B (他社から送られてくるファイル)
id|datetime
1 |2007/4/1 12:15:00
1 |2007/4/1 12:15:02
1 |2007/4/1 12:30:00

■売上記録 C (自社で保存する)
id|datetime|案1)の場合のみ売上記録時の単価も保存・・
1 |2007/4/1 12:15:00
1 |2007/4/1 12:15:02
1 |2007/4/1 12:30:00

■売上集計 D (自社で集計する)
id|date|money
1 |2007/4/1|201円

単価は次々と変わり売上記録時の単価(売上記録時以前で、最も新しい売上単価)で
売上金額を決定し、id+日付毎に集計します。

案1)売上単価変更が少ないと過程し、
30分の間で変更のあった単価と単価変更日時を取得し、
プログラム上に時間と単価を保持し、
売上記録Bを読み込んで、プログラム上で日時を比較して単価を算出し
売上記録Cに売上記録時の単価も保存して、売上集計は月末に行う。

案2)売上記録Cは売上記録Bをそのまま保存し、
売上集計時にSQL一発で、ID、日別毎に金額を算出する。

案2のSQLは難しくてわかりませんので、案1で行こうかなと思うのですが、どちらの案が良いと思われるでしょうか?
メリット、デメリットありそうですが頭がパンクしております(><)

A 回答 (1件)

案1)


メリット
案2に比べて売上の値が正確
デメリット
随時プログラムを動かしていなくてはならずメンテナンス等が大変

案2)メリット/デメリット共に案1の逆

私の意見
案1)でいいと思います。

ちなみに案2)でやる場合は
商品単価Bテーブルを作って売上単価 Aが変更されたらそこへアップデートして
売上記録 Cと商品単価Bで売上集計 D を作成してしまう事です。
かなり実売上と差が出ると思いますが・・・
    • good
    • 0
この回答へのお礼

質問のタイトルが売上金額 C ではなくDであり、間違えてしまったにも関わらず読み解いていただきありがとうございます。

そうですよね。やはり、私も案1)の方が整合性が取れそうなので
上司に案1)を提案してOKをもらっていた所です。
おかげさまで、自信が持てました。

お礼日時:2007/04/11 12:01

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す