小编Imr*_*ran的帖子

错误:列“字段”必须出现在 GROUP BY 子句中或用于聚合函数中

我遇到了一个让我有点困惑的 SQL 问题。关于这个问题,我有两个不同的问题:

  • 为什么?
  • 我该如何解决?

以下查询:

SELECT subs.date_added,subs.subscribed_to,users.userid, users.username, users.email, users.avatar, users.fbuid, users.level, users.avatar_url, users.sex, users.dob, users.profile_hits, users.total_videos, users.subscribers, users.doj, users.extras, users.first_name, users.last_name, users.ban_status, users.usr_status, users.last_logged, users.country, users.user_filter_level, users.signup_ip, subs.userid as subscriber 
FROM cb_subscriptions as subs 
     LEFT JOIN cb_users AS users 
     ON subs.userid=users.userid 
WHERE subs.subscribed_to ='2960' 
GROUP BY subs.subscribed_to ,subs.userid 
ORDER BY subs.date_added ASC 
LIMIT 8;
Run Code Online (Sandbox Code Playgroud)

...产生以下错误:

ERROR: column "users.userid" must appear in the GROUP BY clause or be used in an aggregate function
Run Code Online (Sandbox Code Playgroud)

该字段是 a CHAR,所以我不确定要使用哪种聚合,或者(对我的理解更重要)为什么需要一个聚合。

正如我所说,我不确定我是否理解为什么会发生这种情况。我假设我group …

mysql postgresql migration

2
推荐指数
1
解决办法
6206
查看次数

标签 统计

migration ×1

mysql ×1

postgresql ×1