Mysql 分组方式给出错误“;组函数的使用无效“;

Mysql 分组方式给出错误“;组函数的使用无效“;,mysql,sql,group-by,Mysql,Sql,Group By,我想从下表中获得每个用户的喜好数: 用户表:包含用户ID、电子邮件、联系人号码 Like table:包含图片ID和喜欢它的用户ID 图片发布表*:包含图片id、发布它的用户id 我正在使用以下查询,该查询给出错误“组函数的使用无效”: 我做错了什么?您不能聚合(总和、计数等)您分组所依据的相同变量。如果您想按用户计数,请分组。因此,不妨尝试以下方式: SELECT userid, count(*) from p_like GROUP BY user 从p\u like表中按userId获

我想从下表中获得每个用户的喜好数:

  • 用户表:包含用户ID、电子邮件、联系人号码
  • Like table:包含图片ID和喜欢它的用户ID
  • 图片发布表*:包含图片id、发布它的用户id
我正在使用以下查询,该查询给出错误“组函数的使用无效”:

我做错了什么?

您不能聚合(总和、计数等)您分组所依据的相同变量。如果您想按用户计数,请分组。因此,不妨尝试以下方式:

SELECT userid, count(*) from p_like GROUP BY user
p\u like
表中按userId获取like计数。严格地说,这是你的答案

若要添加更多用户详细信息,您可以将其作为子查询并连接到p_用户表,例如

SELECT email, like_count from p_users pusers, (
    SELECT userid, count(*) like_cound from p_like GROUP BY user
   ) group_sub
WHERE p_users.userid = group_sub.userid

请提供模式为
CREATE TABLE
语句,样本数据为
INSERT-INTO
语句,以及该样本数据所需的结果。您还应该发布错误消息。它会出错,因为它没有意义。组列的计数之和表示什么?????
SELECT email, like_count from p_users pusers, (
    SELECT userid, count(*) like_cound from p_like GROUP BY user
   ) group_sub
WHERE p_users.userid = group_sub.userid