1.有一個公共數(shù)據(jù)表,所有用戶都可以查看2.所有用戶都可以選擇隱藏任意一條記錄,(僅那個用戶)以后查詢不顯示該條記錄,但不影響其他人怎么實(shí)現(xiàn)比較好?再使用一個表記錄嗎?感謝大佬們的回答~
5 回答

慕工程0101907
TA貢獻(xiàn)1887條經(jīng)驗(yàn) 獲得超5個贊
?加一個隱藏的表 record_hide 字段 user record_id
select * from record r left join record_hide h left join r.id != h.record_id where h.user = $user_id

慕田峪7331174
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超13個贊
恩,id, user_id, record_id, created_at
查詢的時候可以left join,為null的就顯示出來

MYYA
TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個贊
這個可以放到cache里面,做永久緩存,做成黑名單的形式
user_id 作為key值 ,value 則是一個或者多個隱藏的記錄ID
每次展示給用戶的時候 查看當(dāng)前列表ID是否在黑名單,在就釋放掉。
也可以單獨(dú)放表記錄,但是cache的效率比db高的多.

滄海一幻覺
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個贊
再用一張表這是肯定的總得有地方存儲吧
可以聯(lián)表查或者查詢前先將用戶隱藏的記錄ID查出來, where中再通過<>{id}查詢
- 5 回答
- 0 關(guān)注
- 569 瀏覽
添加回答
舉報(bào)
0/150
提交
取消