Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript `leftJoin()`不使用Knex.js返回包含对象ORM的联接表数据_Javascript_Postgresql_Knex.js_Objection.js - Fatal编程技术网

Javascript `leftJoin()`不使用Knex.js返回包含对象ORM的联接表数据

Javascript `leftJoin()`不使用Knex.js返回包含对象ORM的联接表数据,javascript,postgresql,knex.js,objection.js,Javascript,Postgresql,Knex.js,Objection.js,当我对objective.js模型使用Knex leftJoin()方法时,leftJoin只返回第一个表数据,而不返回第二个表。当我使用psql直接在终端中进行查询时,同样的查询工作正常 查询如下所示: const result = await Table1Model.query() .leftJoin( 'table_2', 'table_2.table_2_id', 'table_1.table_2_id' )

当我对objective.js模型使用Knex leftJoin()方法时,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);

我希望结果包括所有id与
表1
匹配的
表2


如果希望仅从表2获取列,则我只获取表1的列-

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);

如果希望仅从表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);