我想在 sequelize 中使用 3 或条件编写一些复杂的 where
。
SQL where
示例:
where
(c1 = 'a' or c2 = 'b' or c3 = 'c' or c4 = 'd')
and (c5 = 'e' or c6 = 'f' or c7 = 'g' or c8 = 'h')
and (c9 = 'i' or c10 = 'j')
在 sequlelize 中我写了这样的东西:
where: {
$and: {
$or: [{ c1: 'a' }, { c2: 'b' }, { c3: 'c' }, { c4: 'd' }]
},
$or: [{ c5: 'e' }, { c6: 'f' }, { c7: 'g' }, { c8: 'h' }]
}
但是我如何添加这个对象:$ 或:[{ c9: 'i' }, { c10: 'j' }]
?
附言在我使用 Op
的项目中不用担心。
最佳答案
您需要一个包含内部部分条款的外部 $and
属性。
where: {
$and: [
{
$or: [
{ c1: 'a' }, { c2: 'b' }, { c3: 'c' }, { c4: 'd' }
]
},
{
$or: [
{ c5: 'e' }, { c6: 'f' }, { c7: 'g' }, { c8: 'h' }
]
},
{
$or: [
{ c9: 'i' }, { c10: 'j' }
]
}
]
}
关于javascript - 使用多个或在 sequelize 中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55610324/