使用函数对 WHERE AND 语法进行序列化

我正在使用 Sequelize 5.18.0 和 sequelize-typscript。我需要使用 where 子句and和 a.fn来查找 DateTime 列来自给定日期的行。

执行此操作的正确语法是什么?


  return STTermin.schema(ctx.tenant).findAll({

    where: {

      [Op.or]: [

        {

          [Op.and]: {

            Sequelize.where(Sequelize.fn('DATE', Sequelize.col('von')), '2019-10-17'),

            bis: {

              [Op.is]: null

            }

          }

        },

这给了我以下错误:

http://img2.mukewang.com/618e2aac0001cfef06820083.jpg

潇潇雨雨
浏览 148回答 1
1回答

慕尼黑8549860

既Op.and与Op.or需要的参数数组。所以: [Op.or] : [    [Op.and]: [       Sequelize.where(Sequelize.fn('DATE', Sequelize.col('von')), '2019-10-17'),       {bis: {[Op.is]: null}}    ],    { otherColumn : 123455 }  /* some other condition */]FWIW,我发现运算符别名可以提高代码清晰度...
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript