mysql - sql 中 group 和field 查詢(xún)問(wèn)題。
問(wèn)題描述
目前試著簡(jiǎn)單的文章系統(tǒng),表名為forum 包括了id,uid(發(fā)布者的id),content(內(nèi)容),time(時(shí)間)等等字段,因?yàn)樾枰鰝€(gè)點(diǎn)贊功能,于是新建了一張點(diǎn)贊表forum_likes,里面包括了id,forum_id(文章的id),uid(點(diǎn)贊者的id),現(xiàn)在想做文章的首頁(yè)可以顯示相應(yīng)文章的點(diǎn)贊數(shù)目,使用了leftjoin 關(guān)聯(lián)點(diǎn)贊表,這樣一個(gè)文章對(duì)應(yīng)著多個(gè)點(diǎn)贊,統(tǒng)計(jì)點(diǎn)贊數(shù)目的是,使用count(),但是發(fā)現(xiàn)field需要很多字段,比如想把content和time都顯示出來(lái),但是不能全部group。所以想咨詢(xún)下一般這種情況怎么處理,個(gè)人sql水平非常渣。
問(wèn)題解答
回答1:在forum 表中增加一個(gè)點(diǎn)贊數(shù)或在sql中做一個(gè)虛擬字段記錄點(diǎn)贊數(shù)(結(jié)果來(lái)自于主鍵的關(guān)聯(lián)查詢(xún))
回答2:select id,content,time,num from forum left join (select count(*) as num,forum_id from forum_likes group by forum_id) as like on forum.id=like.forum_id;差不多這個(gè)一意思吧。
相關(guān)文章:
1. mysql - sql 左連接結(jié)果union右連接結(jié)果,導(dǎo)致重復(fù)性計(jì)算怎么解決?2. 數(shù)組排序,并把排序后的值存入到新數(shù)組中3. 默認(rèn)輸出類(lèi)型為json,如何輸出html4. mysql 遠(yuǎn)程連接出錯(cuò)10060,我已經(jīng)設(shè)置了任意主機(jī)了。。。5. mysql怎么表示兩個(gè)字段的差6. MySQL的聯(lián)合查詢(xún)[union]有什么實(shí)際的用處7. mysql時(shí)間格式問(wèn)題8. php多任務(wù)倒計(jì)時(shí)求助9. mysql的主從復(fù)制、讀寫(xiě)分離,關(guān)于從的問(wèn)題10. PHP訂單派單系統(tǒng)
