javascript - 如何计算关系中元组的数量(Sequelize)

标签 javascript sequelize.js

当我尝试计算 users 表中的用户数时,出现以下错误。连接已启动并正在运行,我可以获取其他数据,但该问题特定于计数。 id 是关系的主键。文档表明这是正确使用计数的方法。

错误

Unhandled rejection SequelizeDatabaseError: column "users.id" must appear in the GROUP BY clause or be used in an aggregate function



统计用户数
req.users.findAll({
      attributes: { include: [[req.sequelize.fn('COUNT', req.sequelize.col('username')), 'users']] }
    });

模型定义
req.users = sequelize.define("users", Users);

最佳答案

req.users.findAndCountAll()

是更好的选择。它返回一个 promise 和一个包含 rowscount 的对象。

我是如何得到计数的
const count = await req.users.findAndCountAll().then(result => {
  if (result.count > 0) throw new Error()
});

关于javascript - 如何计算关系中元组的数量(Sequelize),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61572118/

相关文章:

javascript - 如何使用 get() 获取嵌套的 Scope 属性

javascript - 仅在特定窗口宽度下启用平滑,当窗口宽度变大时禁用平滑

javascript - 如何使用 Javascript 启用浏览器 cookie?

sequelize.js - 使用 Sequelize 关联模型的方法是否正确?

javascript替换提交时所有表单字段中的文本

javascript - 非拉丁字母键盘上的键盘快捷键/命令 (JavaScript)

mysql - 无法将 Azure 应用服务中的 NodeJS 应用连接到 Azure MySQL 数据库

amazon-web-services - Cognito 在调用 Lambda 函数时返回 UnexpectedLambdaException 超时错误

sequelize.js - sequelizejs 中的关联过滤器查询

mysql - 能够通过关联进行迁移,但无法通过关联进行查询(未找到关联)