gpt4 book ai didi

node.js - 如何在 Postgres 中转换 OR 条件以对查询进行 Sequelize

转载 作者:行者123 更新时间:2023-12-03 22:38:27 24 4
gpt4 key购买 nike

我的 postgres 查询中有以下查询,

SELECT * FROM users WHERE phone ='081234568912' OR email = 'idafdsafsdfads@gmail.com';

现在我想使用 sequelize 查找数据

这是我的代码, this.app('books').find({query:{phone:data.phone, email:data.email}, paginate:false})
它只执行 AND 命令而不执行 OR

有人知道答案吗?

谢谢

最佳答案

无论您是使用 findAll/find 查询还是进行批量更新/销毁,您都可以传递一个 where 对象来过滤查询。

where 通常从属性:值对中获取一个对象,其中 value 可以是相等匹配的原语或其他运算符的键控对象。

还可以通过嵌套 or 和和运算符集来生成复杂的 AND/OR 条件。

现在似乎有另一种格式。只放逗号将被视为 AND 操作,您可以使用 OR 作为运算符,如下所示

where: {
LastName: "Doe",
$or: [
{
FirstName:
{
$eq: "John"
}
},
{
FirstName:
{
$eq: "Jane"
}
},
{
Age:
{
$gt: 18
}
}
]
}

会产生
WHERE LastName='Doe' AND (FirstName = 'John' OR FirstName = 'Jane' OR Age > 18)

引用文档: http://docs.sequelizejs.com/manual/tutorial/querying.html#where

关于node.js - 如何在 Postgres 中转换 OR 条件以对查询进行 Sequelize ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54435137/

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