我正在使用Sequelize 5.18.0和sequelize-typscript。我需要对and
和.fn
进行where子句,以查找给定日期的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
}
}
},
这给了我以下错误:
答案 0 :(得分:1)
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,我发现Operator Aliases可以提高代码的清晰度...