mysql按照時(shí)間熱度排序
問(wèn)題描述
我有一個(gè)表 有time 和 like喜歡數(shù)的總量 我想通過(guò)將 最近三天喜歡數(shù)高的 排在前面 喜歡數(shù)沒(méi)有喜歡的記錄表 因?yàn)槭亲ト〉目偭?/p>
我現(xiàn)在創(chuàng)建了兩個(gè)表文章表id name喜歡表id 文章id ip 點(diǎn)贊時(shí)間id 文章id ip 點(diǎn)贊時(shí)間
計(jì)算喜歡表總數(shù) 假如點(diǎn)贊很多 很容易在喜歡表產(chǎn)生數(shù)千萬(wàn)條記錄
問(wèn)題解答
回答1:如果有個(gè)記錄like事件的表,每like一下表里就多一條記錄的話,那么很容易就能查詢(xún)出最近3天like的總數(shù)了。為了提高查詢(xún)效率,可以再整理出一張表,記錄3天內(nèi)like的總量。這道題有點(diǎn)跟我常出的這道面試題類(lèi)似:https://segmentfault.com/q/10...我就把問(wèn)題留給樓主了。我自己也多了道面試題 :-)
UPDATE
其實(shí)只需要用一張這樣的表就夠了:
文章id 日期 點(diǎn)贊數(shù)文章id 日期 點(diǎn)贊數(shù)
(文章id, 日期)可以作為復(fù)合主鍵或唯一鍵。每次點(diǎn)贊,對(duì)這篇文章當(dāng)日的點(diǎn)贊數(shù)+1就行了,查最近三日的不就很簡(jiǎn)單又很快嗎?
相關(guān)文章:
1. node.js - mongodb查找子對(duì)象的名稱(chēng)為某個(gè)值的對(duì)象的方法2. docker 17.03 怎么配置 registry mirror ?3. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????4. 前端 - @media query 使用出現(xiàn)的問(wèn)題?5. html5 - datatables 加載不出來(lái)數(shù)據(jù)。6. 運(yùn)行python程序時(shí)出現(xiàn)“應(yīng)用程序發(fā)生異常”的內(nèi)存錯(cuò)誤?7. 測(cè)試自動(dòng)化html元素選擇器元素ID或DataAttribute [關(guān)閉]8. javascript - QQ第三方登錄的問(wèn)題9. 利用IPMI遠(yuǎn)程安裝centos報(bào)錯(cuò)!10. spring-mvc - spring-session-redis HttpSessionListener失效

網(wǎng)公網(wǎng)安備