如何使用带有 Sequelize 的 iLike 运算符进行不区分大小写的查询
How to use iLike operator with Sequelize to make case insensitive queries
我正在使用 Sequelize 和 PostgreSQL 来管理我的数据库。
我想执行不区分大小写的搜索查询。当我用谷歌搜索时,有人说我可以使用 "iLike" 运算符来做到这一点。我试过这样实现:
var getRadiosByGenre = function(Radio,Genre,genreName){
Genre.findOne({where:{name: { $iLike: genreName}}})}
其中 genreName 是一个字符串。
但是,我不断收到此错误:
Error: Invalid value { '$iLike': 'art' }
有谁知道在sequelize中使用iLike的正确方法吗?
谢谢队友。 :)
你应该使用 Sequelize.Op
:
var getRadiosByGenre = function(Radio,Genre,genreName) {
Genre.findOne({
where: {
name: {
[Sequelize.Op.iLike]: genreName
}
}
});
}
如果您想进行部分查询,请不要忘记在 genreName
之前或之后添加 %
。
查看文档 here >
我正在使用 Sequelize 和 PostgreSQL 来管理我的数据库。
我想执行不区分大小写的搜索查询。当我用谷歌搜索时,有人说我可以使用 "iLike" 运算符来做到这一点。我试过这样实现:
var getRadiosByGenre = function(Radio,Genre,genreName){
Genre.findOne({where:{name: { $iLike: genreName}}})}
其中 genreName 是一个字符串。 但是,我不断收到此错误:
Error: Invalid value { '$iLike': 'art' }
有谁知道在sequelize中使用iLike的正确方法吗? 谢谢队友。 :)
你应该使用 Sequelize.Op
:
var getRadiosByGenre = function(Radio,Genre,genreName) {
Genre.findOne({
where: {
name: {
[Sequelize.Op.iLike]: genreName
}
}
});
}
如果您想进行部分查询,请不要忘记在 genreName
之前或之后添加 %
。
查看文档 here >