Hay*_*yan 8 sql database postgresql node.js sequelize.js
使用sequelize检查db输入属性(即array)是否具有给定项。有一个包含数据Events的Postgres数据库。想要得到一个事件,将有这些的工作日。weekDays的类型为ARRAY(整数)。
Events.findOne({
where: {
weekDays: {
$contains: [2, 3],
},
},
});
Run Code Online (Sandbox Code Playgroud)
试图与$ contains,$ any或$ like $ any一起使用,但始终收到相同的错误消息。
TypeError:values.map不是函数
衷心的感谢
Mic*_*abe 10
您正在寻找重叠的值。你在任何数值weekDays数组,在您的匹配任何值数组传递。
这样,您可以使用PG特定的Sequelize.Op.overlap运算符:
然后可以像
Events.findOne({
where: {
weekDays: {
[Sequelize.Op.overlap]: [2, 3],
},
},
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1946 次 |
| 最近记录: |