Orm Sequelize select with aggregate包含错误属性=>;错误

Orm Sequelize select with aggregate包含错误属性=>;错误,orm,inner-join,sequelize.js,Orm,Inner Join,Sequelize.js,模型是具有M:1关系的Person和Team 失败的查询: db.Person.findAll({ attributes: [ [sequelize.fn('COUNT', sequelize.col('*')), 'count']], include: [{model: db.Team, required: true}], // to force inner join group: ['team.team_id'] }).complete(function(er

模型是具有M:1关系的
Person
Team

失败的查询:

db.Person.findAll({
    attributes: [ [sequelize.fn('COUNT', sequelize.col('*')), 'count']],
    include: [{model: db.Team, required: true}], // to force inner join
    group: ['team.team_id']
    }).complete(function(err, data) {
        ...
    });
生成的SQL是:

SELECT "person"."person_id", 
       COUNT(*) AS "count", 
       "team"."team_id" AS "team.team_id", 
       "team"."team_name" AS "team.team_name", 
       "team"."team_email" AS "team.team_email",
       "team"."team_lead" AS "team.team_lead" 
FROM "person" AS "person" INNER JOIN "team" AS "team" 
    ON "person"."team_id" = "team"."team_id" 
GROUP BY "team"."team_id";
显然,包含在
SELECT
子句中的
person.person\u id
把它搞砸了,Postgres正确地抱怨:

ERROR:  column "person.person_id" must appear in the `GROUP BY` clause or be used in an aggregate function
似乎考虑了
attributes
选项,因为
COUNT
显示正确,但是默认情况下添加了
SELECT
子句中的所有其余列

除了
属性
)之外,是否还有其他方法可以明确定义哪些列出现在
选择
子句中,或者这是一个错误


我正在使用Sequelize v2.0.3。

Sequelize将始终将主键添加到所选字段。目前没有办法禁用该功能

也许按照此处的建议在
个人id
上添加
DISTINCT可以解决此问题


否则,请在sequelize bug tracker上随意打开一个问题

这已经是几年前的问题了,是否仍然存在“sequelize将始终将主键添加到所选字段”,并且没有解决方法?