我正在尝试使用查询生成器进行子查询,但我做不到。
原始sql是:
SELECT sms.id,
sms.number,
Max(sms_detail.datetime) AS datahora,
(SELECT Count(status) AS quantidade FROM sms_detail WHERE sms_detail.sms_id = sms.id AND sms_detail.status = 0)
FROM sms AS sms
INNER JOIN sms_detail
ON sms.id = sms_detail.sms_id
GROUP BY sms.id,
sms.number
ORDER BY datahora DESC
答案 0 :(得分:0)
我正在尝试使用查询生成器进行子查询,但我做不到。
这是编写子查询的一种方法:
const subQuery = knex('subquerytable').where('foo', 'bar');
// main query
knex('sms').select('sms.foo', subQuery).innerJoin(...).
我不会为您编写完整的解决方案。我希望这会有所帮助。