Re: [請益] 商城的訂單資料庫設計
可以先想想後面可能需要的功能,像是:
- 訂單快照功能,保留當時的商品資訊 e.g. 價錢,規格等
- 是否需要跨商店結帳?
- 出貨時需不需要做到分批出貨?
- 退款時需不需要做到只退款部分商品?
- 出報表支援商業決策,譬如說過去一個月,哪間商店營業額最高? 哪些商品最熱賣?
再來考慮可能的資料庫設計
1. 一個商品一筆紀錄,通通放進 orders table
- 反正規化,每次看到心情都有一點啊砸
- 做分析的時候都要考慮有多筆商品存在,通常都需要多一次 group by
2. 用 json 或是 string concat 來把商品資訊放進同一個欄位,通通放進 orders
table
- 做分析有點麻煩,如果想要追蹤特定商品的歷史銷售數據,會需要掃整張表
3. 把商品跟訂單資訊拆開,商品另外有一張 order_details 來記錄每筆商品,同
@bheegrl 大大推文
- 幾乎每次都需要 join details table。看 UI 呈現,也可以反正規化解決
我會選 3 拉,彈性比較大,join 麻煩可以用 ORM 解決
一個訂單有十筆紀錄,table 成長很快的問題會傾向用 index, partitioning 來解決
--
※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.50.62.58 (臺灣)
※ PTT 網址
推
推,雖然看不太懂qq
推
簡單說就是做2張表 一個是訂單表(pk:訂單編號,不
→
含商品資訊)一個是訂單商品表(fk:訂單編號,一個
→
商品一筆record)好處是正規化、操作彈性 缺點是要
→
撈整筆訂單資訊時要join才撈得出來
→
訂單表應該算歷史紀錄,應該完整記錄商品資料
→
用join如果店家修改商品資訊,使用者查歷史訂單可能
→
會有困惑
推
推這篇~講得很好
推
我覺得他是要交作業…
→
大哥你是要做商用系統…
推
不是作業,算是自學作品哈
推
專業推
推
推
29
[反推]非常不推薦RAK FITNESS購入健身器材時間線整理: 20210101 <我方> 因為急著購入, 所以線上詢問是否有現貨 <賣家> 當天晚上告知說有現貨 2021010225
[抱怨] Sis&Kid超爛的賣家!*店家名稱:Sis&Kid *店家連結: *溝通截圖:(至少兩張,不得放入文內)19
[閒聊] 蝦皮賣家已答應取消又強制出貨(已解決)如題,先附上對話圖片 事情的經過大概是這樣: 5/23 下單訂了兩件商品,但已經到了訂單的最長備貨日6/19了,還是一直顯示未出貨,賣家也都未主動告知貨況。11
[問題] 淘寶使用折價券後取消訂單這次雙11感恩版友的資訊分享,順利搶到了金豆-1000的折價券 昨天順利下單使用了 但是今天檢查訂單的時候發現我有一件衣服選錯尺寸了 於是我聯絡商家客服詢問他們能不能後台改尺寸 賣家要我取消訂單重下單就好9
[問題] 蝦皮取消訂單我在12/20凌晨成立一筆蝦皮訂單 訂單顯示“商品會於2020-12-23出貨” 會選擇此賣場下單也是因為商品內文有清楚寫到:“會在下單後一天內寄出,缺貨也會主 動立即聯絡買家” 不過賣家並沒有一天內出貨 而且到了12/23仍未見處理訂單7
[問題] 超商整修,pchome取消訂單去年預購限量商品,pchome 5/26在訂單中的問問題通知預計6/11出貨,結果6/1出貨,然 後未取貨退回日期也是6/1,6/2傳簡訊通知:「因門市因素商品無法送達,請重新訂購」 之後,我的訂單就被取消了! 致電客服說因為疫情分流上班,客服電話暫時停止,要客人用訂單中的問問題,等了兩天 pchome的客服都沒回,請悠遊卡公司聯絡才在今晚回覆:商品是限量預購,已先登記,擇7
[問題] 蝦皮退款時優惠券的處理方式標題有點不知道怎麽寫比較清楚XD 我在蝦皮有一筆訂單,訂單內有兩項商品,結果收到時只有其中一項商品 詢問賣家之後得到的答覆是另一項商品缺貨,請我直接申請單項退款即可 (這邊也讓人想吐槽怎麽不是出貨前就先講...) 但是因為該筆訂單我有使用一張60元折價券,我進入退款系統後,發現系統自動把折價券3
[問題] 蝦皮訂單期限及金流第一次遇到這情況 想請問大家 我在11/11日購買一張椅子 刷卡+宅配(無免運) 然後11/11當天有說已安排出貨- 如題(已爬文 前幾天小弟在Buyee下訂Mercari上面的商品 但下訂完後才發現商品不是我要的因此我按了取消訂單 而Buyee也接受了 小弟爬過Buyee的常見問題 他説實際購買前因為缺貨而取消訂單的話就不會有退款紀錄