文章詳情頁
mysql按照時間熱度排序
瀏覽:117日期:2022-06-14 17:15:12
問題描述
我有一個表 有time 和 like喜歡數(shù)的總量 我想通過將 最近三天喜歡數(shù)高的 排在前面 喜歡數(shù)沒有喜歡的記錄表 因為是抓取的總量
我現(xiàn)在創(chuàng)建了兩個表文章表id name喜歡表id 文章id ip 點贊時間id 文章id ip 點贊時間
計算喜歡表總數(shù) 假如點贊很多 很容易在喜歡表產(chǎn)生數(shù)千萬條記錄
問題解答
回答1:如果有個記錄like事件的表,每like一下表里就多一條記錄的話,那么很容易就能查詢出最近3天like的總數(shù)了。為了提高查詢效率,可以再整理出一張表,記錄3天內(nèi)like的總量。這道題有點跟我常出的這道面試題類似:https://segmentfault.com/q/10...我就把問題留給樓主了。我自己也多了道面試題 :-)
UPDATE
其實只需要用一張這樣的表就夠了:
文章id 日期 點贊數(shù)文章id 日期 點贊數(shù)
(文章id, 日期)可以作為復(fù)合主鍵或唯一鍵。每次點贊,對這篇文章當(dāng)日的點贊數(shù)+1就行了,查最近三日的不就很簡單又很快嗎?
相關(guān)文章:
1. 如何解決docker宿主機無法訪問容器中的服務(wù)?2. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?3. javascript - 如何使用nodejs 將.html 文件轉(zhuǎn)化成canvas4. javascript - html5的data屬性怎么指定一個function函數(shù)呢?5. docker-compose中volumes的問題6. 在mac下出現(xiàn)了兩個docker環(huán)境7. python - Scrapy存在內(nèi)存泄漏的問題。8. javascript - 后臺管理系統(tǒng)左側(cè)折疊導(dǎo)航欄數(shù)據(jù)較多,怎么樣直接通過搜索去定位到具體某一個菜單項位置,并展開當(dāng)前菜單9. angular.js - $stateChangeSuccess事件在狀態(tài)跳轉(zhuǎn)的時候不執(zhí)行?10. java如何生成token?
排行榜

熱門標(biāo)簽