bookshelf.js-条件在哪里的嵌套语句

时间:2018-07-10 02:52:25

标签: knex.js bookshelf.js

如何在bookshelf.js中编写以下查询?

select * from Table where (b=2 or b=3) and c = 4;

我主要关心嵌套部分(b = 2或b = 3)。

2 个答案:

答案 0 :(得分:1)

由于书架是基于 knex 构建的,因此我在 knex.js 文档中进行了搜索。

参考链接:https://knexjs.org/#Builder-where

knex('Table').where(function(){
  this.where('b', 2).orWhere('b', 3)
}).andWhere({'c': 4})

答案 1 :(得分:0)

BookShelfTabelModel.where((qb) => {
        qb.where((qb1) => {
          qb1
            .where({
              b: 2,
            })
            .orWhere({
              b: 3,
            });strong text
        });
        qb.andWhere({ c: 4 });
      }).fetchAll()

注意

  • 这将生成如下查询
    select * from table where ((b = 2 or (b = 3)) and c = 4)