我想使用 knex 添加子查询作为列。
SQL 查询示例:
select
name,
(select count(*) from employee where employee.dept_id = 1) as employees_count
from
department
where
department.id = 1
我尝试过
knex('department').select('name', knex('employee').count().where({dept_id: 1}))
.where({id: 1})
但没有成功
最佳答案
const Knex = require('knex');
const knex = Knex({
client: 'pg',
});
knex('department').select(
'name',
knex('employee').count().where({dept_id: 1})
.as('employees_count')
).where({id: 1}).toSQL().sql;
// "select \"name\", (select count(*) from \"employee\" where… \"employees_count\" from \"department\" where \"id\" = ?"
关于node.js - 如何在 knex 中使用嵌套选择查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57495739/