我正在尝试从要使用多个条件的表中过滤数据。当我像查询中那样应用时,它显示应用程序错误。 如何做同样的事情?
我正在使用nodejs框架、express、sequelize和mysql。
router.get('/booking-information', function (req, res) {
// Get orders
Promise.all([Order.findAll({
/*where: {
endDate: null,
},*/
order: [
['id', 'DESC'],
]
}),
Professional.findAll({where: {status : '1'}})
])
.then(([orders, professionals]) => {
orders.map((order) => {
let professionalsInSameArea = professionals.filter((professional) => {
return (professional.service === order.service || professional.secondary_service LIKE '%' + order.service + '%') && (professional.area === order.area || order.area === professional.secondary_area);
});
order.professionals = [...professionalsInSameArea]
return order;
});
res.render('booking-information', {title: 'Technician', orders: orders, user: req.user});
})
.catch((err) => {
console.error(err);
});
});
我想过滤掉已下订单的同一地区、同一服务的专业人士。
最佳答案
you can use Op operator in query
like :-
const Op = Sequelize.Op
{
[Op.or]: [
{
fieldName: {
[Op.like]: 'abc%'
}
},
{
fieldName: {
[Op.like]: '%abc%'
}
}
]
}
关于mysql - 如何在sequelize、node js中使用like in where条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57092309/