- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设您有一个队列表、agent_queues 和代理表。一个代理可以在多个队列中,一个队列可以有多个代理。现在假设您正在尝试获取队列列表以及这些队列中的代理数量。我希望类似以下的工作:
queues.findAll({
include: ['agentQueues'],
group: ['queues.name', 'queues.matcher', 'queues.id'],
attributes: [[Sequelize.fn('count', Sequelize.col('agentQueues.id')), 'agentCount']]
})
SELECT "queues".*
FROM (SELECT
"queues"."name",
"queues"."matcher",
"queues"."id",
count("agentQueues"."queueId") AS "agentCount"
FROM "queues" AS "queues"
GROUP BY "name", "matcher", "id"
) AS "queues" LEFT OUTER JOIN "agent_queues" AS "agentQueues" ON "queues"."id" = "agentQueues"."queueId";
SELECT name, matcher, count(agent_queues."queueId") as agentCount FROM queues
LEFT OUTER JOIN agent_queues ON "agent_queues"."queueId" = queues.id
GROUP BY name, matcher;
[{ name: 'Some Queue', matcher: '1 = 1', agentCount: 2 }]
最佳答案
这是一个有点老的问题,但这个问题也与新版本的 Sequelize 有关。我最好的解决方法是使用 literal
而不是 fn
和 count
职能。
此代码应生成您期望的 sql 语句。
queues.findAll({
group: ['queues.name', 'queues.matcher'],
attributes: ['name', 'matcher',[literal(`(SELECT count(*) FROM "agentQueues"
WHERE queue."id" = "agentQueues"."queueId"])`, 'agentCount')]]
})
关于javascript - 在 findAll 中续写计数关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47423906/
我来自 Laravel,您可以在那里使用 Eloquent。在 Eloquent 中,您可以执行以下操作: $this->hasOne('App\Models\Member', 'family_id'
我的目标是在 JSONB 中找到 id。 我正在使用 DataTypes.JSONB。 我的数据看起来像: {"id": ["8a20b9c0-d3c5-11ea-895e-8757d6b9cab5"
正确的使用方法是什么this.getDataValue在 getter function使用 TypeScript 时的 Sequelize 模型? 这是我得到的错误: Property 'getDa
我知道 Sequelize 不支持 postgresQL 的 updateOnDuplicate sequelize doc ,那么有解决办法吗? 是否可以通过“SQL命令”来实现。 最佳答案 新的
我正在尝试在 Sequelize 中生成此查询: SELECT * FROM messages WHERE (to_user_id = 1 AND from_user_id = 2) OR (to_u
首先,我创建了一个错误的迁移,因此删除了一个迁移文件。但是当我尝试运行新迁移时,它显示旧迁移的错误为错误:“运行迁移列中的错误\“is_ac\”关系\“用户\”已经存在 我正在将 sequelize
我正在尝试使用 Many:Many 与 Sequelize 的关联(针对 Postgre db)。 我想创建一个场所并将其与单个事务中的用户相关联。 field 和用户设置为正常的Sequelize模
我一直在尝试将我的用户表的 id(主键)设置为 UUID。但是,我不断收到此错误:当我尝试为其播种时,字段“id”没有默认值。 这是我迄今为止在我的用户模型中的内容: 'use strict'; co
我尝试将 Sequelize 与 TypeScript 一起使用。我从 official document TypeScript section 复制代码像这样: // These are all t
我是一名优秀的程序员,十分优秀!