sequelize.js - 为不同的字段续集多个 $or
问题描述
有没有办法使用 sequelize 创建下面的查询?我的主要问题是创建多个具有不同字段的OR语句
WHERE "event"."active" = true
AND ("event"."startDate" BETWEEN '2020-04-16' AND '2020-05-15' OR "event"."recurrenceEndDate" BETWEEN '2020-04-16' AND '2020-05-15')
AND ("event"."parent" IS NULL OR "event"."independent" = true)
这是我尝试过的
where = {
active: True,
$or: [
{ startDate: { $between: [event.startDate, event.recurrenceEndDate] } },
{ recurrenceEndDate: { $between: [event.startDate, event.recurrenceEndDate] } }
]
parent: { $is: null }
}
现在我需要添加OR independent = true
insideparent is null
语句,但是我不能重复$or
之前使用的语句,因为它会是一个无效的 json(两个同名的字段)
解决方案
尝试这样的事情:
where = {
$and: [
{ active: True },
{ $or: [
{ startDate: { $between: [event.startDate, event.recurrenceEndDate] } },
{ recurrenceEndDate: { $between: [event.startDate, event.recurrenceEndDate] } }
] },
{ $or: [ { parent: { $is: null } }, { independent: true }]
]
}
推荐阅读
- python - 请解释此代码 list = ' '.join(i for i in list_text_from_file if not i in chars)
- vue.js - 基于项目类型的 Vuetify 格式单元格
- python - 硬编码逻辑回归评分代码
- python - 如何更改将 float('inf') 转换为 str 的 python 方式?
- reactjs - 胜利图,堆叠的条形一内一
- javascript - 将类传递给 Salesforce 中的组件
- excel - VBA Lotus DB Search - 获取当前文档的文件夹/视图名称
- c# - 将 tsql 查询转换为 LINQ
- eclipse - 尝试查看已安装的 JRE 时出现 Eclipse 错误:无法创建选定的首选项页面
- java - 回收站视图上的图像未加载