Re: [SQL ] user在網站上的活動歷史訊息 規劃資料表

看板Database作者 (^^)時間14年前 (2011/05/13 00:00), 編輯推噓1(105)
留言6則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《ntu180 (^^)》之銘言: : 請教各位,關於user在網站上的活動歷史訊息該如何規劃比較好呢 : 假設有以下2張表 : 資料表: members race : *MemberID *RaceID : Name Type : Birthday Date : Img MemberID : members用來存user的基本資料,race用來存比賽紀錄 : 希望可以保存他之前所有的活動紀錄,包括何時修改了暱稱(Name)、圖片(Img) : 何時參加過哪個比賽(race) : 目前想到的方法是,每一張要保留歷史訊息的表都要額外再1張表來記錄 : history_m history_r : *mHID *rHID : Name Type : Img : MemberID MemberID : Date Date : 只是這樣規劃感覺很沒有效率,每張表都要有對應的history來記錄... : 也會有欄位出現NULL : 是否有比較好的方法呢? : 使用MySQL : 謝謝 不知道一般實際處理這個問題都是怎麼處理的阿? 我是還有想到這個方法 將所有的活動紀錄全部存到同一張表history_all 比較方便讀出,但是一樣會有很多NULL... 分成不同張表來記錄,又遇到多張table無法合併再一起依時間來排序顯示 真是困擾阿 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 175.181.147.189

05/13 00:11, , 1F
分表分開下query, 讓前端合併兩個query結果不就行了?
05/13 00:11, 1F

05/13 00:42, , 2F
分開下query,到了前端合併後並不會依照時間排序阿?
05/13 00:42, 2F

05/13 00:48, , 3F
另外還有,每張表要讀出的欄位數量和類型都不一樣耶..
05/13 00:48, 3F

05/13 05:33, , 4F
應該說必須先知道你想要在網頁上 (非 query) 怎麼樣顯示
05/13 05:33, 4F

05/13 05:38, , 5F
userA昨天改了暱稱,今天參加了比賽B.名次,場地要顯示嗎?
05/13 05:38, 5F

05/13 05:45, , 6F
另外 history 的資料欄位不見得和原表相同
05/13 05:45, 6F
文章代碼(AID): #1Dp0GqOD (Database)
討論串 (同標題文章)
文章代碼(AID): #1Dp0GqOD (Database)