以下查询未正确使用$or
运算符。我的语法错了吗?
models.Accounts
.find({ where: {
venue_id: req.body.venue_id,
$or: [{
organization_id: req.body.organization_id//,
//venue_id: null
}]
}
})
.then(function(result) {
console.log(result)
}
它生成的sql看起来像这样。
SELECT `id`, `uuid`, `venue_id`, `organization_id`, `labor_service_name`, `created_at`, `updated_at` FROM `accounts` AS `Accounts` WHERE `Accounts`.`venue_id` = NULL AND (`Accounts`.`organization_id` = 2)
答案 0 :(得分:2)
从official docs开始,OR
查询的正确方法是将每个语句的单个对象放在数组中由OR
加入,如下所示 -
$or: [{a: 5}, {a: 6}]
所以在你的情况下,你应该写 -
models.Accounts
.find({
where: {
$or: [
{ organization_id: req.body.organization_id },
{ venue_id: req.body.venue_id }
//venue_id: null
]
}
})
.then(function (result) {
console.log(result)
})
答案 1 :(得分:0)
你试过吗
-'American'+'Japanese'
答案 2 :(得分:0)