当我将 Knex leftJoin() 方法与 Objection.js 模型结合使用时,leftJoin 仅返回第一个表数据,而不返回第二个表。当我直接在终端中使用 psql 执行相同的查询时,该查询工作正常
查询如下所示:
const result = await Table1Model.query()
.leftJoin(
'table_2',
'table_2.table_2_id',
'table_1.table_2_id'
)
.where('table_1_id', '=', table1Id);
我希望结果包含所有 table_2
列,其中 ID 与 table_1
匹配。
我只获取 table_1
的列
最佳答案
如果您只想从 table_2 获取列-
const result = await Table1Model.query()
.leftJoin(
'table_2',
'table_2.table_2_id',
'table_1.table_2_id'
)
.columns('table_2.*') // add columns
.where('table_1_id', '=', table1Id);
关于javascript - `leftJoin()` 不使用 Knex.js 通过 Objection ORM 返回连接表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55393433/