waf*_*ffl 1 javascript sql node.js sequelize.js
我有一个包含多个专栏的文章数据库,希望能够同时搜索title和description.
目前,我有:
Article.findAll({
where: {
title: { like: '%' + searchQuery + '%' }
}
});
Run Code Online (Sandbox Code Playgroud)
我怎样才能搜索描述?
我已经阅读了sequelize文档,甚至在本Complex filtering / OR / NOT queries节中也看过,但这些例子似乎只能解释一栏中的搜索.
ler*_*dev 10
const Op = Sequelize.Op;
Article.findAll({
where: {
title: { [Op.like]: '%' + searchQuery + '%' },
description: { [Op.like]: '%' + searchQuery2 + '%' }
}
});
Run Code Online (Sandbox Code Playgroud)
以上将确保title包括searchQuery 和 description包括searchQuery2.如果您希望在文章包含两者之一时返回结果,则以下查询应该有效:
Article.findAll({
where: {
title: { like: '%' + searchQuery + '%' },
description: { like: '%' + searchQuery2 + '%' }
}
});
Run Code Online (Sandbox Code Playgroud)
续集 >= 4.12
Article.findAll({
where = {
[Op.or]: [
{ name: { [Op.like]: `%${req.query.query_string}%` } },
{ description: { [Op.like]: `%${req.query.query_string}%` } }
]
}
});
Run Code Online (Sandbox Code Playgroud)
仅供参考:mysql 不支持 iLike ;)