精華區beta C_and_CPP 關於我們 聯絡資訊
請問一下各位大大, 假設我要做一個聊天室, 包含團隊頻道和個人頻道 db schema 大致為 好友table uid fid time 使用者table userid time 聊天table sid type(1:團隊 2:個人(私聊)) rid(房間id) msg(裡面會包含訊息與發送者資訊) time 如果是團隊部分rid, 就是user所加入的團隊id, 比較單純 但如果個人部分的rid 我的想法是A_B的userid做為rid 例如玩家A userid : 100001, 玩家B userid : 100002 rid = 100001_100002(小的編號放置在前面) 但這樣查詢有點麻煩, 如果我要查詢目前我的私聊有哪些新訊息 我必須 1. 拉出我的好友名單 2. 將我的userid與好友userid組成rid, 還需判斷小的編號要放前面 3. 將組好的rid, 丟到聊天table查詢 感覺有點複雜, 不知道大家有沒有比較好的設計? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.181.227 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1484985384.A.02E.html ※ 編輯: tas72732002 (114.34.181.227), 01/21/2017 15:57:18
soheadsome: 用nosql(逃 01/21 16:43
james732: 看起來不是本板的業務? 01/21 17:17
lucky1lk: 你來錯版了... 01/21 17:33
tas72732002: 要到那個版? 01/21 18:30
lucky1lk: 我很想反問你 你在問(做)啥?! 一樓有關鍵字... 01/21 19:23
LPH66: 你文章的第二行就講 DB schema 了, 問題也是 schema 設計 01/21 21:39
LPH66: 不過我個人覺得這篇丟去 Database 版可能不會有你要的答案 01/21 21:40
LPH66: 這比較像是 DB 和程式的協同設計, 我會建議去一般程式設計 01/21 21:41
LPH66: 的 Programming 版發問 01/21 21:41
LPH66: 這裡是討論 C/C++ 語言, 你的問題好像也沒特定程式語言... 01/21 21:46
dannypsnl: 群組中的所有使用者都是發訊息給聊天室,聊天室轉寄訊 01/21 21:52
dannypsnl: 息給所有人 01/21 21:52
wtchen: 板工正在搭飛機,這篇等我到家你就死定了 01/21 23:54
MOONRAKER: 完了完了 死定了 01/22 11:22