我試圖創建一個數據透視表來幫助跟蹤我的應用程序中的「挑戰」。基本上我有一個challenge_task
數據透視表,創建一個挑戰和任務之間的關係。當處於挑戰狀態的用戶完成我想要分辨的任務時,我可以跟蹤用戶的進度。存儲多個用戶完成挑戰任務的最佳方式是什麼?將多個值存儲在一個數據庫列中
我在數據透視表中考慮添加一個名爲user_completed
的json
列來處理這個問題,併爲每個完成挑戰任務的用戶存儲user_id
。
所以challenge_task
會是什麼樣子
challenge_id | task_id | user_completed
這是一個好辦法嗎?還是有什麼更適合這一點?
「在一個數據庫列多個值」幾乎總是一個壞主意。 – Uueerdo
@Uueerdo如果一個挑戰只有兩個用戶,那麼我應該像數據透視表上的'user_a_completed'和'user_b_completed'列一樣,並在用戶完成時添加'user_id' – Packy
只需每次創建一個新行。無需將多個用戶標識存儲在一行中。 –