Php 计算一个值在列中出现的次数,其中liked_id与likes匹配?

Php 计算一个值在列中出现的次数,其中liked_id与likes匹配?,php,mysql,sql,Php,Mysql,Sql,有人知道如何计算一个值在单个列中出现的总次数吗 例如,我的表看起来像: user_id | liked_id | likes 3 1 1 4 1 1 我要做的是计算liked_id匹配的likes列的总数 那么,id 1有2个喜欢 有人能告诉我怎么做吗 function count_likes() { global $connection;

有人知道如何计算一个值在单个列中出现的总次数吗

例如,我的表看起来像:

user_id  |  liked_id   |   likes

   3             1           1   
   4             1           1
我要做的是计算liked_id匹配的likes列的总数

那么,id 1有2个喜欢

有人能告诉我怎么做吗

function count_likes() {
            global $connection;
            global $profile_id;
            $query = "SELECT likes, count(*) FROM ptb_likes GROUP BY liked_id";
            $count_likes_set = mysql_query($query, $connection);
            confirm_query($count_likes_set);
            return $count_likes_set;        
        }
试试这个:

SELECT liked_id, SUM(likes) FROM ptb_likes GROUP BY liked_id

您应该按照
id

SELECT liked_id, count(*)  totalLikes
FROM ptb_likes 
GROUP BY liked_id

如果只需要like_id为1的行数

SELECT liked_id, COUNT(likes) FROM ptb_likes WHERE liked_id = 1;
如果需要每个like_id的频率:

SELECT liked_id, COUNT(likes) FROM ptb_likes GROUP BY liked_id;
请注意:不要使用SUM,因为它将like_id的所有值相加,如果like_id大于1,则计数将是错误的。使用count代替