例如我有一個Table 是用來記cache 的key。
重覆也沒關系,反正我抓出來時可以做distinct,
但重點是一定要有存,不然怎麼抓出來砍key。
而且如果每次寫入時都要判斷是否存在,還蠻浪費效能的。
可是Table 中太多重覆的資料,也有點浪費空間,可能還會影響Select 的效能。
所以還是偶而去砍掉重覆的資料吧。
方法如下:
查出沒有重覆的資料
select max(id) from cache_key group by key;
刪除重覆的資料列
delete from cache_key where id not in (select max(id) from cache_key group by key);
搞定。
0 comments:
張貼留言