文章詳情頁
mysql按照時間熱度排序
瀏覽:102日期:2022-06-14 17:15:12
問題描述
我有一個表 有time 和 like喜歡數的總量 我想通過將 最近三天喜歡數高的 排在前面 喜歡數沒有喜歡的記錄表 因為是抓取的總量
我現在創建了兩個表文章表id name喜歡表id 文章id ip 點贊時間id 文章id ip 點贊時間
計算喜歡表總數 假如點贊很多 很容易在喜歡表產生數千萬條記錄
問題解答
回答1:如果有個記錄like事件的表,每like一下表里就多一條記錄的話,那么很容易就能查詢出最近3天like的總數了。為了提高查詢效率,可以再整理出一張表,記錄3天內like的總量。這道題有點跟我常出的這道面試題類似:https://segmentfault.com/q/10...我就把問題留給樓主了。我自己也多了道面試題 :-)
UPDATE
其實只需要用一張這樣的表就夠了:
文章id 日期 點贊數文章id 日期 點贊數
(文章id, 日期)可以作為復合主鍵或唯一鍵。每次點贊,對這篇文章當日的點贊數+1就行了,查最近三日的不就很簡單又很快嗎?
相關文章:
1. windows誤人子弟啊2. mysql優化 - MySQL如何為配置表建立索引?3. 實現bing搜索工具urlAPI提交4. 關于mysql聯合查詢一對多的顯示結果問題5. 數據庫 - Mysql的存儲過程真的是個坑!求助下面的存儲過程哪里錯啦,實在是找不到哪里的問題了。6. 我在網址中輸入localhost/abc.php顯示的是not found是為什么呢?7. 如何用筆記本上的apache做微信開發的服務器8. python - linux怎么在每天的凌晨2點執行一次這個log.py文件9. MySQL主鍵沖突時的更新操作和替換操作在功能上有什么差別(如圖)10. 冒昧問一下,我這php代碼哪里出錯了???
排行榜
