Re: [SQL ] 資料庫表格設計
交易資訊這類資料, 最好是最原始的結果, 一筆交易就一記錄, 用流水號當主鍵
這樣要新增其他資訊才方便. 例如產品報價上午和下午不同, 就需要原始資料才能反應
或是交易有備註欄, 就需要一筆交易一筆記錄才能儲存
需要費腦筋的是交易記錄的用途. 如果要拿來下查詢, 就要建好相關的索引
如果只是記錄, 可以定期從主資料表移至封存用的資料表/資料庫 (不多就不用移了)
一天上百筆其實很少, 基本上建好索引便可.
就算一天十萬筆, 也是大概一個禮拜封存一次就差不多
補充: 你可以每天針對前一天的交易記錄分析更新統計數字, 放至另一個資料表,
看你想針對哪個條件查詢
如: 每日銷量, 熱銷產品, 購買金額最高客戶 等等
※ 引述《pttsasho (sasho)》之銘言:
: 假設目前有三種產品 A B C
: 以及三個客戶 1 2 3
: 希望建立一個表格能夠將所有的交易資訊通通記錄下來
: 目前建立的表格如下
: Date 產品編號 客戶編號 數量
: 2011/03/10 A 1 8
: 2011/03/10 A 1 5
: 2011/03/10 A 2 3
: 2011/03/10 A 2 5
: 2011/03/10 B 1 1
: 2011/03/10 B 2 4
: 2011/03/10 C 3 7
: 2011/03/11 A 1 2
: 2011/03/11 A 1 5
: 2011/03/11 A 2 3
: 如上所示
: 一個產品一天可能會有三個客戶購買
: 同時一個客戶一天購買同一產品的次數可能不只一次
: 我想要把上面的資訊再分類出來 因為光一天的交易紀錄可能就有上百筆
: 但一直不知道該怎麼設計表格才會比較有效率 所以想請版上高手幫忙
: 目前有想到的是
: 1. 利用產品做分類 但如此一來還是會有一天之內同一客戶多筆的交易紀錄
: 表格如下
: Table Name: 產品A
: Date 客戶編號 數量
: 2011/03/10 1 8
: 2011/03/10 1 5
: 2011/03/10 2 3
: 2011/03/10 2 5
: 2011/03/11 1 2
: 2011/03/11 1 5
: 2011/03/11 2 3
: 不曉得版上高手能否幫忙提供其他更有效率的方法呢
: 感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 71.93.105.54
※ 編輯: danielguo 來自: 71.93.105.54 (03/12 01:20)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):