gpt4 book ai didi

mysql - 在 sequelize 中使用 where 子句 with 或 condition

转载 作者:行者123 更新时间:2023-12-03 22:34:08 25 4
gpt4 key购买 nike

我正在尝试在 sequelize 中使用或条件来表示查询,例如,

SELECT * FROM table WHERE title = "title" OR genre = "genre"
然而,这是我已经尝试过的
const checkTitle= await User.findOne({
where: {
$or: [
{ title: req.body.title },
{ genre: req.body.genre }
]
}
}).catch((err) => console.log(err.message));
但它一直给我一个错误,说值无效
Invalid value { title: 'title' }
我想知道如何在 Sequelize 中正确使用 OR 条件?

最佳答案

您需要将大括号放在代码中的标题和类型之后。
代码应该是这样的:

const checkTitle= await User.findOne({
where: {
$or: [
title: {req.body.title },
genre: {req.body.genre }
]
}
}).catch((err) => console.log(err.message));
最新版本的 sequelize 修改了逻辑操作的语法。为了
Sequelize >= 4.12
const checkTitle= await User.findOne({
where: {
[Op.or]: [
title: {req.body.title },
description: {req.body.genre }
]
}
}).catch((err) => console.log(err.message));

关于mysql - 在 sequelize 中使用 where 子句 with 或 condition,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63218606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com