如何在SequelizeJS中使用$ in运算符?

时间:2018-04-06 20:33:16

标签: javascript mysql node.js sequelize.js in-operator

我试图在SequelizeJS中使用$ in运算符,就像在MySQL语句中那样:

Retrofit retrofit = new Retrofit.Builder()
    .baseUrl("<your server url>")
    .build();

YourService service = retrofit.create(YourService .class);
service.getResult().execute();

就我而言,我加入了三张牌桌,但我不相信这与此问题有关。我通过以下代码继续收到此错误SELECT column_name(s) FROM table_name WHERE column_name IN (value1, value2, ...);

Error: Invalid value { '$in': ['12345','67890','15948'] }

有人可以提供一些有关如何使用$ in运算符的见解吗?我见过的唯一例子是在搜索Ids时在数组中使用整数。

1 个答案:

答案 0 :(得分:2)

只需阅读此处的文档Sequelize WHERE

我试试:

const Op = Sequelize.Op;
definedTable.findAll({
  include: [{
    model: definedTableTwo,
    where: {
      zip_code: {
        [Op.in]: ['12345','67890','15948']
          }
    },
    required: true,
    plain: true
  },
  {
    model: definedTableThree,
    required: true,
    plain: true
  }]
})

这有帮助吗?