这是我的原始查询
select * from USER where concat_ws(' ',firstName,lastName)
like '%ammu sudev%' OR email LIKE "%ammu sudev%"
Sequlize查询
Users.findAll({
where: {
$or: [
Sequelize.where(Sequelize.fn('concat_ws', Sequelize.col('firstName'), ' ', Sequelize.col('lastName')), {
like: '%' + keyword + '%'
}),
{ email: { $like: '%' + keyword + '%' } },
{ company: { $like: '%' + keyword+ '%' } }
]
}
}).then((result)=>{
console.log("Query",result);
callback(result);
}).catch((error)=>{
console.log("Error",error);
callback(false);
})
但它返回空结果,但行查询返回正确的结果
答案 0 :(得分:0)
我认为您需要更改此行
like: '%' + keyword + '%'
到
$like: '%' + keyword + '%'
在Sequelize.where
内。