簡體   English   中英

如何找到一個值在記錄中的最高次數?

[英]How to find the highest number of times a value is in records?

例如,在我創建的一個名為“ likes”的表中,有三個字段:id(無關),user id(用戶的id)和post id(帖子的id)。 假設我有許多記錄,並且我想找出數據庫中次數最多的帖子ID。 需要明確的是,我並不是問哪個記錄在post id字段中編號最大。 相反,我正在尋找列出次數最多的帖子ID。 例如,假設一個帖子ID(222)在數據庫中出現7次,而其他每個帖子ID均被使用1次。 在這種情況下,我需要找到222的帖子ID。 如果可能的話,如何找到記錄中使用量最高的前5個帖子ID?

這是一個相當簡單的聚合函數count() ,它將計算匹配記錄的數量。

select
    postID,
    count(*) as numLikes
from 
    yourTable
group by
    postID
order by
    numLikes desc

這將按喜歡的次數順序列出帖子。

此外,由於我主要為您提供解決方案,因此閱讀我寫的問答集將非常好,它將更加詳細地解釋這一切的工作原理-實際上,我做了相當多的工作來掩蓋此類匯總功能在里面。 我會在問題的第一個答案中途大約解釋一下這種查詢中發生的事情:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM